接着上一篇:Django之創建項目
目的:一個空項目創建好了,我們在models.py中新增3張表並在admin界面中顯示,並能操作它們。
示例models
編輯models.py
# -*- coding:utf-8 -*-
from __future__ import unicode_literals
from django.db import models
# Create your models here.
class Blog(models.Model):
name = models.CharField(max_length=100,verbose_name=u"博文名稱")
tagline = models.TextField(verbose_name=u"標注")
def __unicode__(self):
return self.name
class Meta:
verbose_name = "博客主題"
verbose_name_plural = "博客主題"
class Author(models.Model):
name = models.CharField(max_length=50,verbose_name=u"姓名")
email = models.EmailField(verbose_name=u"郵箱")
class Meta:
verbose_name = "作者"
verbose_name_plural = "作者"
class Entry(models.Model):
blog = models.ForeignKey(Blog)
headling = models.CharField(max_length=255,verbose_name=u"標頭")
body_text = models.TextField(verbose_name=u"博體")
pub_date = models.DateField(verbose_name=u"發布日期")
mod_date = models.DateField(verbose_name=u"修改日期")
authors = models.ManyToManyField(Author)
n_comments = models.IntegerField(verbose_name=u"備注")
n_pingbacks = models.IntegerField()
rating = models.IntegerField()
def __unicode__(self):
return self.headling
class Meta:
verbose_name = "博文"
verbose_name_plural = "博文"
模型注冊到admin
from django.contrib import admin
# Register your models here.
from sqlOper import models
class AuthorAdmin(admin.ModelAdmin):
list_display = ('name','email')
class BlogAdmin(admin.ModelAdmin):
list_display = ('name','tagline')
class EntryAdmin(admin.ModelAdmin):
list_display = ('headling','pub_date','mod_date','n_comments')
# admin.site.register([models.Blog,models.Author,models.Entry])
admin.site.register(models.Blog,BlogAdmin)
admin.site.register(models.Author,AuthorAdmin)
admin.site.register(models.Entry,EntryAdmin)
將表實例化到數據庫
>python manage.py makemigrations
Migrations for 'sqlOper':
sqlOper\migrations\0001_initial.py:
- Create model Author
- Create model Blog
- Create model Entry
>python manage.py migrate
Operations to perform:
Apply all migrations: admin, auth, contenttypes, sessions, sqlOper
Running migrations:
Applying sqlOper.0001_initial... OK
創建超級用戶
D:\py\python\spiders\django\djangoStudy>python manage.py createsuperuser Username (leave blank to use 'administrator'): admin Email address: 2905@qq.com Password: Password (again): Superuser created successfully.
登陸界面,輸入超級用戶名/密碼

現在可以對你的表進行操作了,添加一些作者、博客,內容信息吧。
關於中文的問題
1、django-admin界面顯示中文
修改settings.py
LANGUAGE_CODE = 'zh_Hans'
TIME_ZONE = 'Asia/Shanghai'
最新的django版本(1.9)中只有zh_Hans,可以將其復制為zh_CN
2、admin中新建表顯示中文
使用django中的原類Meta
選項參考:http://kaozjlin.iteye.com/blog/1662617
