Django 小结
Django 命令
1.下载
pip install django == 1.11.23 -i # i(源)
2.创建项目
django-admin startproject 项目名
3.启动项目
cd 到项目的根目录 python manage.py runserver # 127.0.0.1:8000 python manage.py runserver 80 # 127.0.0.1:80 python manage.py runserver 0.0.0.0:80 # 0.0.0.0:80
4.创建app
python manage.py startapp app名称
注册
5.数据库迁移
python manage.py makemigrations # 创建迁移文件 检测已经注册的APP下的models python manage.py migrate # 迁移 将models的变更记录同步到数据库
settings
app(应用)
INSTALLED_APPS = [ 'app01', #第一种写法 'app01.apps.App01Config' #第二种写法 ]
MIDDLEWARE(中间件)
注释掉csrf 提交POST
TEMPLATES(模板)
DIRS =[ os.path.join(BASE_DIR,‘templates’)]
DATABASES(数据库)
DATABASES = { 'default': { 'ENGINE' : 'django.db.backends.mysql',#引擎 'NAME' : 数据库的名称 'HOST' : 'IP' 'PORT' : 3306 'USER' : '用户名' 'PASSWORD':' 密码' } }
STATIC_URL(静态文件)
STATICFILES_DIRS=[ os.path.join(BASE_DIR,'statics') ]
views导入
from django.conf import settings
MySQL
1.在cmd创建数据库
2.settings中的配置数据库
3.django使用pymysql模块间接mysql数据库
在与setting同级目录下__init__.py中写入
import pymysql pymysql.install_as_MySQLdb()
import pymysql
pymysql.version_info = (1, 4, 6, 'final', 0) # change mysqlclient version
pymysql.install_as_MySQLdb()
4.在app下的models.py中写类
class Publisher(models.Model):
name = models.Charfield(max_length=32) # varcher(32) pid = models.ForeignKey('Publisher', on_delete=models.CASCADE)#外键 on_delete 2.0 必填
# MySQL存在表,django项目于使用,请看下列
class student(models.Model):
name = models.CharField(max_length=32)
age = models.IntegerField()
class Meta:
managed = False # 重点
db_table = 'student'
5.执行迁移命令
python manage.py makemigrations # 创建迁移文件 检测已经注册的APP下的models python manage.py migrate # 迁移 将models的变更记录同步到数据库
原生SQL
在settings下
LOGGING = { 'version': 1, 'disable_existing_loggers': False, 'handlers': { 'console':{ 'level':'DEBUG', 'class':'logging.StreamHandler', }, }, 'loggers': { 'django.db.backends': { 'handlers': ['console'], 'propagate': True, 'level':'DEBUG', }, } }