django mysql 初始化_Django 入门篇2:初始化项目

settings.py 基本配置注册应用:settings.py 中 INSTALLED_APPS 中添加已生成的应用名

模板目录:建立一个模板目录 templatessettings.py 中 TEMPLATES 中的 'DIRS' 项设为 [os.path.join(BASE_DIR, 'templates')]

本地化:settings.py 中 LANGUAGE_CODE = 'zh-hans' , TIME_ZONE = 'Asia/Shanghai'

退出调试模式:settings.py 中 DEBUG = False:在网页中不显示错误调试信息,例如显示一个标准的 404 页面若设置 DEBUG = False,则必须设置 ALLOWED_HOSTS = ['*']

配置数据库:settings.py 中 DATABASES 中的 'ENGINE' 项中把 sqlite3 替换为自己的数据库,如 mysql'NAME' 项内容替换为数据库名

另外设置 'USER', 'PASSWORD', 'HOST', PORT'

若数据库在虚拟机,'HOST' 不要写主机名,地址解析会让访问很慢

配置静态文件目录:新建 static 目录,settings.py 中添加 STATICFILES_DIRS = [os.path.join(BASE_DIR, 'static')]

其他配置创建管理员:python manage.py createsuperuser

后台管理注册模型类:admin.py,from 应用.models import 模型类 admin.site.register(模型类)

整理应用目录:新建一个名为 apps 包,把应用都放进去,使项目结构更清晰简化应用路径:settings.py 中 import sys, sys.path.insert(0, os.path.join(BASE_DIR, 'apps'))

配置 URL:在应用的 path() 中加上 namespace='应用名' 的参数,用于反向解析 URL

配置 MySQLpip install pymysql mysqlclient

mysqlclient 与高版本 Python 不完全兼容,项目可能会报错,把 raise 错误的语句注释掉即可

在项目的 __init.py__ 中 import pymysql pymysql.install_as_MySQLdb()

settings.py > DATABASES 配置数据库信息# settings.pyDATABASES = { 'default': { # 'ENGINE': 'django.db.backends.sqlite3', # 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), 'ENGINE': 'django.db.backends.mysql', # 使用mysql数据库 'NAME': 'py_db', # 数据库名 'USER': 'root', # 数据库用户 'PASSWORD': '1', # 密码 'HOST': 'localhost', # 数据库IP 'PORT': 3306, # mysql默认端口3306 }}

配置模型类基类新建名为 db 的包,新建 base_model.pyfrom django.db import modelsclass BaseModel(models.Model): create_time = models.DateTimeField(auto_now_add=True, verbose_name='创建时间') update_time = models.DateTimeField(auto_now=True, verbose_name='更新时间') is_delete = models.BooleanField(default=False, verbose_name='删除标记') class Meta: abstract = True

创建自定义用户类自定义用户模型:from django.contrib.auth.models import AbstractUserclass User(AbstractUser, BaseModel): pass

setting.py 中注册:setting.py 中添加 AUTH_USER_MODEL='user.User',并且一定要在项目首次进行迁移之前设置此项添加此项后,数据库将不再有名为 auth_user 的表

createsuperuser 命令将会保存到 AUTH_USER_MODEL 指定的表中去

在 admin.py 中注册from django.contrib import adminfrom django.contrib.auth.admin import UserAdminfrom apps.user.models import Useradmin.site.register(User, UserAdmin)

富文本编辑器 tinymce在需要用到 HTMLField 的模型类中导入 from tinymce.models import HTMLField

URLconf 中添加 path('tinymce/', include('tinymce.urls'))

在settings.py中,应用注册 'tinymce' 项,添加 tinymce 设置项TINEMCE_DEFAULT_CONFIG = { 'theme': 'advanced', 'width': 600, 'height': 400,}来源:https://www.icode9.com/content-4-728951.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值