1,models编写

#encoding=utf-8
from django.db import models # Create your models here.
class BookInfo(models.Model): #创建书本信息类,继承models.Model
booktitle=models.CharField(max_length=20)
bookdata=models.DateField()
def __unicode__(self): #设置后台数据显示信息
return self.booktitle
class HeroInfo(models.Model): #创建英雄信息类
heroname=models.CharField(max_length=10)
herosex=models.CharField(max_length=1)
herocontent=models.CharField(max_length=50)
herobook=models.ForeignKey('BookInfo',on_delete=models.CASCADE,) #引用外键,即BookInfo对象
def __unicode__(self): #设置后台数据显示信息
return self.heroname

2,settings配置

app注册:

INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'web'
]

数据库配置:

DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'web',
'USER': 'root',
'PASSWORD': 'Lifei@123',
'HOST': 'localhost',
'PORT': '', }
}

3,__init__文件配置(django版本高于1.8的不支持MySQLdb,选择使用pymsql,所以需要在init文件中作如下配置)

import pymysql
pymysql.install_as_MySQLdb()

4,在migrations中生成数据迁移文件,同步表结构(创建表)

 当表结构发生变化时需要进行再次生成数据迁移文件和同步表结构的操作

5,创建admin的superuser

在manage.py统计目录下,执行:python manage.py createsuperuser  即可

6,admin定制(简单版)

from django.contrib import admin
from web import models #导入app的models
# Register your models here. class bookinfo(admin.ModelAdmin): #自定义页面显示(创建数据后的数据显示格式)
list_display = ('booktitle','bookdata')
class heroinfo(admin.ModelAdmin):
list_display = ('heroname','herosex','herocontent','herobook') admin.site.register(models.BookInfo,bookinfo) #注册表 后台管理
admin.site.register(models.HeroInfo,heroinfo)

ps:遇到数据库版本小于1.3.3报错(mysqlclient 1.3.3 or newer is required; you have %s" % Database.__version__)的情况,需要去修改C:\Python36\Lib\site-packages\django\db\backends\mysql的base.py文件。

  遇到MySQLdb模块找不到的情况,需要去修改C:\Python36\Lib\site-packages\django\db\backends\mysql的base.py文件和introspection.py文件,将其中的from MySQLdb import XXX中的MySQLdb改为我们使用的pymysql即可。

附图:

参考资料:http://www.cnblogs.com/alex3714/articles/5457672.html

Django的admin定制的更多相关文章

  1. 【django之admin,单例模式】

    一.admin组件使用 Django 提供了基于 web 的管理工具. Django 自动管理工具是 django.contrib 的一部分.你可以在项目的 settings.py 中的 INSTAL ...

  2. Django之admin的使用和源码剖析

    admin组件使用 Django 提供了基于 web 的管理工具. Django 自动管理工具是 django.contrib 的一部分.你可以在项目的 settings.py 中的 INSTALLE ...

  3. Django 之 admin管理工具

    -------------------------------------------------------------------------妄尝恶果,苦果自来. admin组件使用 Django ...

  4. IO操作、PIL使用、Django的admin操作

    操作内存的流-StringIO | BytesIO from io import StringIO, BytesIO #创建操作字符串的内存流 sf = StringsIO() #往内存中写 sf.w ...

  5. python框架之Django(13)-admin组件

    使用 Django 提供了基于 web 的管理工具. Django 自动管理工具是 django.contrib 的一部分.你可以在项目的 settings.py 中的 INSTALLED_APPS ...

  6. django之admin设置

    Django自带的后台管理是Django明显特色之一,可以让我们快速便捷管理数据.后台管理可以在各个app的admin.py文件中进行控制.以下是我最近摸索总结出比较实用的配置.若你有什么比较好的配置 ...

  7. django中admin的使用

    转载网址:https://www.cnblogs.com/wumingxiaoyao/p/6928297.html     Django自带的后台管理是Django明显特色之一,可以让我们快速便捷管理 ...

  8. Django的 admin管理工具

    admin组件使用 Django 提供了基于 web 的管理工具. Django 自动管理工具是 django.contrib 的一部分.你可以在项目的 settings.py 中的 INSTALLE ...

  9. 自定义Django的admin界面

    第6章介绍了Django的admin界面,现在是回过头来仔细看看这个的时候了 我们前面讲的几次admin是Django的"杀手级特性",并且大多数Django开发人员很快爱上了它节 ...

随机推荐

  1. Wp8滚动区域(ScrollViewer)控件的使用

    1. <StackPanel x:Name="TitlePanel" Grid.Row="0" Margin="12,17,0,28" ...

  2. <转>c++ builder JSONCPP 注意事项 XE2 解决编译问题 _Mfl

    在C++Builder中使用JSONCPP需要注意的问题 1.使用STL的MAP而不是内建的MAP这个问题实际上和编译器无关.内建的MAP不是很稳定,当解析数据大于600K左右时,会崩溃.虽然一般来说 ...

  3. event.returnvalue = false的使用

    event.returnvalue false代表不接收事件返回值 <script language="JavaScript"> //Ctrl+s保存 document ...

  4. HTML输入验证提示信息

    1.oninvali事件通过setCustomValidity方法来自定义提示信息 <form action=""> <label> 数字: <inp ...

  5. python判断文件是否存在目录中

    ##支持排除文件和目录#!/usr/bin/python #coding:utf-8 import os def list_file(file_name): data = [] file_name = ...

  6. nodejs 获取指定路径下所有的文件夹名

    示例:获取 ./components 下所有的文件夹名称 let components = [] const files = fs.readdirSync('./components') files. ...

  7. android动画具体解释二 属性动画原理

    property动画是一个强大的框架,它差点儿能使你动画不论什么东西. 你能够定义一个动画来改变对象的不论什么属性,不论其是否被绘制于屏幕之上. 一个属性动画在一定时间内多次改变一个属性(对象的一个字 ...

  8. android studio- Gradle "xxx" project refresh failed

    Android Studio每次更新版本都会更新Gradle这个插件,但由于长城的问题每次更新都是失败,又是停止在Refreshing Gradle Project ,有时新建项目的时候报 Gradl ...

  9. windows system.exe占用文件

    1)问题的原因是出于一个服务Application Experience,如果装好系统后就把此服务设为手动启动了,平时运行也没什么异常.但是win7在运行exe时如果没有这个服务的辅助就会长时间的占用 ...

  10. Editing a Book UVA - 11212 IDA*

    You have n equal-length paragraphs numbered 1 to n . Now you want to arrange them in the order of 1 ...