Django开发项目的过程
[ ] –下载安装第三方库 pip install django==相应的版本
–创建项目 admin-django startproject projcet (project是你创建的项目名称,可以自己设置)
–创建好之后输入tree命令会显示django自动生成的相关目录
—–project
—-init.py:一个空文件,告诉python这个目录应该被看成一个包。
—-setting.py:项目的配置文件。
—-urls.py:过程的url声明
—-wsgi.py:过程与WSGI兼容的web服务器人口
—–manage.py:一个命令行工具,可以让我们用多种方式与django项目进行交互
–进入project目录下 cd project
–创建应用,在此目录下我们可以根据项目需求创建多个应用 python manage.py startapp myApp (myApp是你创建的过程应用的名称)--创建完应用之后,需要将生成的应用写到配置文件setting.py中 ---- INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'myApp', ] --启动服务 python manage.py runserver 8080 (8080是你开启的相应端口号,默认的是8000)
数据库操作
当需要有数据库加载时:
--生成数据库 python manage.py makemigrations
--迁移数据库 python manage.py migrate
django有自带的数据sqlite3,当我们执行上述命令时就会自动生成。
但是当我们选择的数据库是mysql或者redis时需要重新配置。
mysql数据库
在setting.py文件中修改默认的数据信息:
默认情况:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
}
}
连接到已经安装好的数据库:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'py02', --py02你所创建的数据名
'USER':'root',
'PASSWORD':'数据库密码',
'HOST':'localhost',
'PORT':'3306', --mysql数据库默认开启的端口号
}
}
在windows系统下的话再安装数据库的时候,设置默认开机自启数据库,执行上述命令时不会报错。
当执行上述命令出现计算机积极拒绝,无法连接时,此时可能是数据库没有开启,进入终端窗口
---net start mysql57 (mysql57是在安装mysql数据库的名字,默认是mysql57,此时看你设置的为准)
因为django默认使用的是MySQLdb,python3中已经不支持使用直接运行时会报错(ImportError: No module named 'MySQLdb')此时需要在项目目录下的__init__.py文件下导入pymysql包。这样就可以正常运行啦。
--import pymysql
--pymysql.install_MySQL_db()
redis数据库
用户在登录注册的时候,会输入相应的信息,因此会在客户端生成响应的session值,一般我们会把session相应的数据存入到redis数据库中,因此我们也需要在setting.py的配置文件中配置相应的信息。
--在setting.py配置文件的最下面配置相关信息就好。
SESSION_ENGINE='redis_sessions.session'
SESSION_REDIS_HOST='localhost'
SESSION_REDIS_PORT=6379
SESSION_REDIS_DB=0
SESSION_REDIS_PASSWORD='密码'
SESSION_REDIS_PREFIX='session'