如何使用Django框架编写自己的博客系统创建项目step_1首先新建一个项目FirstBlog(以下简称FB)实现基本功能,比如创建数据库,创建超级用户,并实现后台管理员登录流程,请参考【链接说明】[1]注册应用step_2在FB中注册应用blog,编写数据库文件blog/models.py,告诉主程序首先在blog/settings.py中注册应用,并修改数据库后台运行之前,需要在blog/admin.py中注册站点博客属性:id、博客标题、博客作者、博客摘要、博客text,博客创建时间,博客栏目(类别),博客标签,阅读数标签属性:id,标签名称栏目(类别)属性:id,栏目名称博客和栏目:多对一博客和标签:多对-many不同于flask的数据库表结构,在django框架中,数据库表之间的关联只需要在对应关系中外键ForeignKey写在多边,不需要回写另一个表中的引用。如果是多对多关系,可以在任意一端写ManyToManyField。#blog/models.pyfromdjango.contrib.auth.modelsimportUserfromdjango.dbimportmodels#在这里创建你的模型。#博客属性:id,博客标题,博客作者,博客摘要,博客正文,博客创建时间,博客隶属关系栏目(类别),博客标签,阅读数,评论数#标签属性:id,标签名#栏目(类别)属性:id,栏目名#博客与栏目:多对一#博客与标签:多对-to-manyclassCategory(models.Model):name=models.CharField(max_length=64,verbose_name='columnname')类元:verbose_name='column'verbose_name_plural='column'def__str__(self):return'%s'%(self.name)classTag(models.Model):name=models.CharField(max_length=64,verbose_name='tagname')classMeta:verbose_name='tag'verbose_name_plural='tag'def__str__(self):返回'%s'%(self.name)classPost(models.Model):title=models.CharField(max_length=100,unique=True,verbose_name='title')create_time=models.DateTimeField(verbose_name='creationtime')summary=models.CharField(max_length=255,verbose_name='summary')body=models.TextField(verbose_name='text')#作者可以从admin数据库表中读取使用在r=models.ForeignKey(User,verbose_name='author')category=models.ForeignKey(Category,verbose_name='column')tags=models.ManyToManyField(Tag,verbose_name='tag')views=models.IntegerField中查找作者(default=0,verbose_name='readingcount')classMeta:verbose_name='blog'verbose_name_plural='blog'def__str__(self):return'%s'%(self.title)创建数据step_3创建多个标签后台,栏目,多篇博客,保证前端展示是数据构建的路由step_4构建路由和视图函数,告诉主路由函数FirstBlog/settings.py如何找到前端展示step_5创建静态模板目录static/,修改模板文件,设置.py文件的静态配置。如果没有修改settings.py文件,可以在模板文件中加入{%loadstatic%}。并修改样式的位置(css...)根据使用的网页模板,显示自己的页面显示结果:如何快速准确的跳转到页面fromdjango.urlsimportreverse#返回正确完整的路由in在html文件中继续阅读可以直接跳转到{{post.get_url}}阅读。注意,重写视图函数的名称时,需要声明命名空间。修改blog/models.py的Post表,添加属性get_url()#blog/models.pydefget_url(self):returnreverse('blog:detail',kwargs={'id':self.pk})#blog/urls.pyfromdjango.conf.urlsimporturlfromdjango.contribimportadminfromblogimportviewsapp_name='blog'urlpatterns=[url(r'^$',views.index,name='index'),url(r'book/(?P
