本节我们要做的事----博客的发布(涉及到外键)
通过代码,想实现发布博客的功能,要有model 、view 、template 、 url(路由规则)
(1)先到blog/model.py文件中,定义一个博客自己的model,写一个类去继承models ;类写完了就得想一下,博客发布要满足哪些条件----->标题,作者,内容,发布时间,分类(外键)
并且要给字段限制------不能为空(null) 、 最大长度(max_length); 最后为了明确是誰发布的,还要加一个关联字段(bloguser), 注意起的名不要是数据库中关键字!
Foreign Key ( ) 括号里的内容,跟谁关联就写誰
(2)我们需要的是,在数据库中创一个blog_blog的表;老样子使用快捷键Ctrl +Alt +R 进入执行manage.py的shell命令
A)第一步---->makemigrations + blog ;新创一个app,一定要先去settings.py文件中把名字加进INSTALLED_APPS
不添加就会出现这个问题,我随便创个app_name = qq ,敲回车后就提示我没发现有这个app
继续之前的操作,打完发现blog名不提示,一敲回车,出现了问题(Type Error),提示我们models.py文件中的外键写错了,少一个参数(on_delete = None)
B
)第二步---->去blog/views.py文件中,定义一个函数
既然是发表博客,那就要分两种情况:发or要发
A)是get方式的话,我们需要渲染一个视图----->render( request, ’视图名称’)
视图名称如果还没建立,就去放置视图模板的templates ,下面建立一个新文件夹blog,
在blog下面创一个叫add.html的文件,接着就可以回到views.py去写视图名称
到这一步,视图就已经渲染成功了
B) else中的语句块
首先要收集博客的相关信息,