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',
        },
    }
}

 

posted @ 2019-08-26 21:52  驰念  阅读(188)  评论(0编辑  收藏  举报