记录Django模型使用的注意事项。
from django.db import models
from account.models import User
# Create your models here.
class Blog(models.Model):
title = models.CharField(max_length=100)
body = models.TextField()
timestamp = models.DateTimeField()
author = models.ForeignKey(User)
def __unicode__(self):
return self.title
使用上述代码创建Blog模型,并通过python manage.py syncdb持久到数据库。
1. Blog中隐藏有主键id,自增长。可通过下述语句显示声明:
id = models.AutoField(primary_key=True)
在使用时,视图中使用时可用以下方式访问主键:
blog = Blog.objects.get(title="my title")
blog_key = blog.id
from django.contrib import admin
from blog import models
# Register your models here.
class BlogAdmin(admin.ModelAdmin):
list_display = ('id', 'title', 'timestamp', )
search_fields = ('title', 'body', )
ordering = ('-timestamp', )
admin.site.register(models.Blog, BlogAdmin)
list_display用于定义admin页面中的Blog列表显示字段;search_fields是搜索字段;ordering用于排序,此处表示按timestamp逆序排列。