建立项目python
django-admin startproject Mydjango cd Mydjango python manage.py startapp APP
生成数据表django
python manage.py makemigrations APP python manage.py migrate
#coding=utf8 from django.contrib import admin from .models import * # 引入models模块 admin.site.site_title = 'Django后台管理程序' # 站点标题,默认名称【站点管理】 admin.site.site_header = 'MyDjango' # 站点头部名称,默认名称【Django管理】 class Personnel_Table_Custom(admin.ModelAdmin): # 自定义类--自定义显示表信息 list_display = ("id","Name","Per_City","Date") # 自定义显示字段 list_editable = ("Name",) # 自定义显示字段设定可编辑 list_per_page = 10 # 分页显示行数 list_filter = ('Per_City',) # 列表过滤选项 filter_horizzontal = ('Name',) # 自定义添加字段搜索(下拉多选使用) search_fields = ('Name',) # 根据字段搜索 ordering = ("id",) # 以 id 字段排序,默认升序,降序字段前加-,设置第二排序后再跟字段 class City_Table_Custom(admin.ModelAdmin): # 自定义类--自定义显示表信息 list_display = ("id", "City") # 自定义显示字段 list_editable = ("City",) # 自定义显示字段设定可编辑 admin.site.register(Personnel_Table,Personnel_Table_Custom) #admin中添加表信息,(models.表名,自定义类名) admin.site.register(City_Table,City_Table_Custom) # 若是直接添加表名无选择自定义类,则默认所有显示 # admin.site.register(City_Table)
from django.apps import AppConfig class AppConfig(AppConfig): name = 'APP'
# coding=utf8 from django.db import models # Create your models here. class Personnel_Table(models.Model): #人员表 id = models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='编号') # 建立主键,自增加、设置主键、无序列号设置、并建立别名 Name = models.CharField("姓名",max_length=20,null=False) # 建立字符串字段,最大长度为20,并建立别名,且不能为空 Date = models.DateField("日期") # 建立日期字段 Per_City = models.ForeignKey("City_Table",on_delete=models.CASCADE,verbose_name='城市') # 一对多关联表 def __str__(self): # 类str方法,用于调取显示字符串而不是内存地址 return self.Name class Meta: verbose_name = "人员" # 表的别名 verbose_name_plural = "人员" # 表的复数别名,若是只有别名无复数表名默认显示名称后自动添加字母s class City_Table(models.Model): #城市表 id = models.AutoField('序号',auto_created=True, primary_key=True, serialize=False) # 建立主键,自增加、设置主键、无序列号设置、并建立别名 City = models.CharField(max_length=20,verbose_name="城市") # 建立字符串字段,最大长度为20,并建立别名 def __str__(self): # 类str方法,用于调取显示字符串而不是内存地址 return self.City class Meta: verbose_name = "城市" # 表的别名 verbose_name_plural = "城市" # 表的复数别名,若是只有别名无复数表名默认显示名称后自动添加字母s
# coding=utf8 from django.shortcuts import render # Create your views here.
INSTALLED_APPSapp
'APP',
TEMPLATES测试
'DIRS': [os.path.join(BASE_DIR, 'APP/templates')],
LANGUAGE_CODEcode
LANGUAGE_CODE = 'zh-hans' #中文显示
TIME_ZONEserver
TIME_ZONE = 'Asia/Shanghai' #时区设置
建立用户名密码中间件
python manage.py createsuperuser
运行服务排序
python manage.py runserver
访问地址内存
http://127.0.0.1:8000/admin
setting中设置,后台中文显示【但不包含表名,APP名称等】字符串
'django.middleware.locale.LocaleMiddleware', #中间件中添加 或 LANGUAGE_CODE = 'zh-hans' #语言设置
app下的__init__,app别名后台中显示
# coding=utf8 from django.apps import AppConfig default_app_config = 'APP.IndexConfig' #默认app配置变动 class IndexConfig(AppConfig): #重写IndexConfig类 name = 'APP' #应用名称 verbose_name = '主管理菜单' #应用别名(admin后台显示名称)
models中设置,表名,后台中文显示
class Meta: verbose_name = "城市" verbose_name_plural = "城市"
models中设置,字段名,后台中文显示
Name = models.CharField("姓名",max_length=20,null=False) 或 Name = models.CharField(max_length=20,null=False,verbose_name="姓名")