创建项目django-admin.py startproject projectname
创建应用west,Python manage.py startapp west(pycharm 中不需要)
注意:要把“west”应用添加到settings.py中的INSTALLED_APPS
栏目:名称,网址,简介
文章:标题,作者,网址,内容
models.py如下:
from django.db import models
from django.core.urlresolvers import reverse
#from django.utils.encoding import python_2_unicode_compatible
#@python_2_unicode_compatible
class Column(models.Model):
name = models.CharField('栏目名称',max_length=256)
slug = models.CharField('栏目网址',max_length=256,db_index=True)
intro = models.TextField('栏目简介',default='')
def get_absolute_url(self):
return reverse('column',args=(self.slug,))
def __str__(self):
return self.name
class Meta:
verbose_name = '栏目'
verbose_name_plural = '栏目'
ordering = ['name'] #按照哪个栏目排序
#@python_2_unicode_compatible
class Article(models.Model):
column = models.ManyToManyField(Column,verbose_name='归属栏目')
title = models.CharField('标题',max_length=256)
slug = models.CharField('网址',max_length=256,db_index=True)
author = models.ForeignKey('auth.User',blank=True,null=True,verbose_name='作者')
content = models.TextField('内容',default='',blank=True)
published =models.BooleanField('正式发布',default=True)
pub_date = models.DateTimeField('发布时间',auto_now_add=True,editable=True)
update_time = models.DateTimeField('跟新时间',auto_now=True,null=True)
def get_absolute_url(self):
return reverse('article',args=(self.slug,))
def __str__(self):
return self.title
class Meta:
verbose_name = '教程'
verbose_name_plural = '教程'
创建数据库
python manage.py makemigrations west
python manage.py migrate