django环境初始化

Posted hao-guo

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了django环境初始化相关的知识,希望对你有一定的参考价值。

1.创建一个app

DE:Pycharm 于Terminal中输入: python manage.py startapp XXX (XXX为项目名称)

此时Python会创建XXX目录,

包含: migrations: 数据库修改表结构产生数据

admin:Django提供的后台管理页

apps:配置当前app

modules:ORM,写制定类,创建数据库表

tests:单元测试

views:业务代码

 

 

2.配置静态文件目录static   

于项目同名目录下settings文件末尾追加(注意末尾逗号-,):

STATICFILES_DIRS=(

        os.path.join(BASE_DIR,‘static‘),

    )

3.配置数据库

若想将模型转为mysql数据库中的表,需要在settings中配置:

DATABASES = {
    ‘default‘: {
        ‘ENGINE‘: ‘django.db.backends.mysql‘,
        ‘NAME‘:‘bms‘,           # 要连接的数据库,连接前需要创建好
        ‘USER‘:‘root‘,        # 连接数据库的用户名
        ‘PASSWORD‘:‘‘,        # 连接数据库的密码
        ‘HOST‘:‘127.0.0.1‘,       # 连接主机,默认本级
        ‘PORT‘:3306            #  端口 默认3306
    }
}

  注意1:NAME即数据库的名字,在mysql连接前该数据库必须已经创建,而上面的sqlite数据库下的db.sqlite3则是项目自动创建 USER和PASSWORD分别是数据库的用户名和密码。设置完后,再启动我们的Django项目前,我们需要激活我们的mysql。然后,启动项目,会报错:no module named MySQLdb 。这是因为django默认你导入的驱动是MySQLdb,可是MySQLdb 对于py3有很大问题,所以我们需要的驱动是PyMySQL 所以,我们只需要找到项目名文件下的__init__,在里面写入:

import pymysql
pymysql.install_as_MySQLdb()

  最后通过两条数据库迁移命令即可在指定的数据库中创建表 :

    python manage.py makemigrations

   python manage.py migrate

 注意2:确保配置文件中的INSTALLED_APPS中写入我们创建的app名称

 INSTALLED_APPS = [

‘django.contrib.admin‘,
‘django.contrib.auth‘,
‘django.contrib.contenttypes‘,
‘django.contrib.sessions‘,
‘django.contrib.messages‘,
‘django.contrib.staticfiles‘,
"book"
]

 注意4: 如果想打印orm转换过程中的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‘,
        },
    }

  

 

以上是关于django环境初始化的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Django Summernote 中显示编程片段的代码块?

django.core.exceptions.ImproperlyConfigured: Requested setting DEFAULT_INDEX_TABLESPACE的解决办法(转)(代码片段

django.core.exceptions.ImproperlyConfigured: Requested setting DEFAULT_INDEX_TABLESPACE的解决办法(转)(代码片段

用django2.0来开发 环境部署和初始化项目

Django_项目初始化

Python经典前端框架:Django,第一天Django环境搭建