一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

Django 入門篇2:初始化項目

 印度阿三17 2020-08-19

settings.py 基本配置

  • 注冊應用:settings.py 中 INSTALLED_APPS 中添加已生成的應用名
  • 模板目錄:建立一個模板目錄 templates
    • settings.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 = ['*']
  • 配置數(shù)據庫:settings.py 中 DATABASES 中的 'ENGINE' 項中把 sqlite3 替換為自己的數(shù)據庫,如 mysql
    • 'NAME' 項內容替換為數(shù)據庫名
    • 另外設置 'USER', 'PASSWORD', 'HOST', PORT'
    • 若數(shù)據庫在虛擬機,'HOST' 不要寫主機名,地址解析會讓訪問很慢
  • 配置靜態(tài)文件目錄:新建 static 目錄,settings.py 中添加 STATICFILES_DIRS = [os.path.join(BASE_DIR, 'static')]

其他配置

  • 創(chuàng)建管理員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='應用名' 的參數(shù),用于反向解析 URL

配置 MySQL

  • pip install pymysql mysqlclient

  • mysqlclient 與高版本 Python 不完全兼容,項目可能會報錯,把 raise 錯誤的語句注釋掉即可

  • 在項目的 __init.py__import pymysql pymysql.install_as_MySQLdb()

  • settings.py > DATABASES 配置數(shù)據庫信息

    # settings.pyDATABASES = {    'default': {        # 'ENGINE': 'django.db.backends.sqlite3',        # 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),        'ENGINE': 'django.db.backends.mysql', # 使用mysql數(shù)據庫        'NAME': 'py_db', # 數(shù)據庫名        'USER': 'root', # 數(shù)據庫用戶        'PASSWORD': '1', # 密碼        'HOST': 'localhost', # 數(shù)據庫IP         'PORT': 3306, # mysql默認端口3306     }}

配置模型類基類

  • 新建名為 db 的包,新建 base_model.py

    from django.db import modelsclass BaseModel(models.Model):    create_time = models.DateTimeField(auto_now_add=True, verbose_name='創(chuàng)建時間')    update_time = models.DateTimeField(auto_now=True, verbose_name='更新時間')    is_delete = models.BooleanField(default=False, verbose_name='刪除標記')        class Meta:        abstract = True

創(chuàng)建自定義用戶類

  • 自定義用戶模型

    from django.contrib.auth.models import AbstractUserclass User(AbstractUser, BaseModel):    pass
  • setting.py 中注冊:setting.py 中添加 AUTH_USER_MODEL='user.User',并且一定要在項目首次進行遷移之前設置此項

    • 添加此項后,數(shù)據庫將不再有名為 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./content-4-728951.html

    本站是提供個人知識管理的網絡存儲空間,所有內容均由用戶發(fā)布,不代表本站觀點。請注意甄別內容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權內容,請點擊一鍵舉報。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多

    日韩一区二区三区免费av| 欧美日韩精品久久第一页 | 人妻久久一区二区三区精品99| 久久精品国产熟女精品| 91欧美日韩国产在线观看| 夜色福利久久精品福利| 久久综合亚洲精品蜜桃| 国产又猛又大又长又粗| 69精品一区二区蜜桃视频| 少妇福利视频一区二区| 欧美日韩精品一区二区三区不卡| 东京热男人的天堂久久综合| 久久精品免费视看国产成人| 东京热一二三区在线免| 清纯少妇被捅到高潮免费观看| 欧美日韩国产综合特黄| 国产精品亚洲欧美一区麻豆| 国产精品免费不卡视频| 国产亚洲精品香蕉视频播放| 国产精品大秀视频日韩精品| 久久久精品日韩欧美丰满| 办公室丝袜高跟秘书国产| 欧美不卡高清一区二区三区| 扒开腿狂躁女人爽出白浆av | 欧美一区二区三区不卡高清视 | 热情的邻居在线中文字幕| 国产性情片一区二区三区| 91在线国内在线中文字幕| 美女极度色诱视频在线观看| 国产av熟女一区二区三区蜜桃| 国产精品熟女乱色一区二区| 亚洲欧美日本成人在线| 最好看的人妻中文字幕| 99久久精品免费看国产高清| 91麻豆精品欧美视频| 麻豆最新出品国产精品| 日本男人女人干逼视频| 大屁股肥臀熟女一区二区视频| 色哟哟在线免费一区二区三区| 午夜亚洲精品理论片在线观看| 国内精品偷拍视频久久|