查看“项目初始化”的源代码
←
项目初始化
跳转至:
导航
,
搜索
因为以下原因,您没有权限编辑本页:
您所请求的操作仅限于该用户组的用户使用:
用户
您可以查看与复制此页面的源代码。
==安装环境== 安装django REST Framework: pip3 install djangorestframework==3.6.3 安装markdown 和django-filter: pip3 install markdown==2.6.8 django-filter==1.0.4 ==创建第一个项目== 使用 django-admin 来创建 mxshop 项目: django-admin startproject mxshop 创建完成后我们可以查看下项目的目录结构: <nowiki>$ cd mxshop/ $ yum install tree $ tree . |-- mxshop | |-- __init__.py | |-- settings.py | |-- urls.py | `-- wsgi.py `-- manage.py</nowiki> 目录说明: mxshop: 项目的容器。 manage.py: 一个实用的命令行工具,可让你以各种方式与该 Django 项目进行交互。 mxshop/__init__.py: 一个空文件,告诉 Python 该目录是一个 Python 包。 mxshop/settings.py: 该 Django 项目的设置/配置。 mxshop/urls.py: 该 Django 项目的 URL 声明; 一份由 Django 驱动的网站"目录"。 mxshop/wsgi.py: 一个 WSGI 兼容的 Web 服务器的入口,以便运行你的项目。 接下来我们进入 mxshop 目录输入以下命令,启动服务器: python3 manage.py runserver 0.0.0.0:8000 0.0.0.0 让其它电脑可连接到开发服务器,8000 为端口号。如果不说明,那么端口号默认为 8000。 在mxshop/settings.py中下面这一项添加允许访问的IP地址: ALLOWED_HOSTS = ['10.0.0.30'] 这里把Linux服务器的本机IP设上即可。 在浏览器输入你服务器的 ip(这里我们输入本机 IP 地址: 10.0.0.30:8000) 及端口号,如果正常启动,输出结果如下: [[文件:bd20-3-16.png|700px]] ==创建应用== python3 manage.py startapp users ===注册应用=== 在 settings.py 中添加我们的应用名称users <nowiki># Application definition INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'users', ]</nowiki> ==配置数据库== ===安装mysql数据库=== *[[Centos7 安装MySQL]] *创建数据库mxshop: MariaDB [(none)]> create database mxshop CHARACTER SET utf8 COLLATE utf8_unicode_ci; Query OK, 1 row affected (0.01 sec) ===安装python mysql模块=== yum install mysql-devel yum install python3-devel (注:直接安装pip3 install mysqlclient 时可能会遇到mysql_config:command not found,因此先把mysql-devel安一下) pip3 install mysqlclient==1.3.10 pip3 install pillow==4.2.1 Pillow 是 PIL 的替代版本,PIL 软件包提供了基本的图像处理功能,如:改变图像大小,旋转图像,图像格式转换,色场空间转换,图像增强,直方图处理,插值和滤波等等。 ===Django中配置数据库=== mysql中配置任何ip可访问数据库: mysql -uroot -p <nowiki>Enter password: Welcome to the MariaDB monitor. Commands end with ; or \g. MariaDB [(none)]> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '000000' WITH GRANT OPTION;</nowiki> mxshop/settings.py: <nowiki> DATABASES = { 'default': { 'ENGINE':'django.db.backends.mysql', 'NAME':"mxshop", 'USER':'root', 'PASSWORD':"000000", 'HOST':"10.0.0.30", 'OPTIONS':{ 'init_command': 'SET storage_engine=INNODB;' } } } </nowiki> ==项目整理== ===新建目录=== 新建目录apps extra_apps media db_tools: root@localhost mxshop]# mkdir apps extra_apps media db_tools [root@localhost mxshop]# ls apps db.sqlite3 db_tools extra_apps manage.py media mxshop users ===移动目录=== 将users 移动到apps下: [root@localhost mxshop]# mv users apps/ [root@localhost mxshop]# ls apps/ users *apps: 存放项目的应用 *extra_apps: 存放外部导入的应用 *media:存放媒体文件 *db_tools:存放操作数据库的脚本 ===设置项目搜索目录=== mxshop.settings.py: 在BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))行下加入如下内容,以便更好的寻找apps、extra_apps两个目录中的文件。 <nowiki> import sys 。。。 sys.path.insert(0,BASE_DIR) sys.path.insert(0,os.path.join(BASE_DIR,'apps')) sys.path.insert(0,os.path.join(BASE_DIR,'extra_apps')) </nowiki>
返回至
项目初始化
。
导航菜单
个人工具
登录
命名空间
页面
讨论
变种
视图
阅读
查看源代码
查看历史
更多
搜索
导航
首页
最近更改
随机页面
帮助
工具
链入页面
相关更改
特殊页面
页面信息