博客页面的修改文章和添加新文章
从主页点击不同文章的超链接进入文章页面,就是传递了一个id作为参数,然后后台代码根据这个参数从数据库中取出来对应的文章,并把它传递到前端页面
修改文章和添加新文章,是要进入编辑页面,但编辑页面一个内容为空,一个有内容
根据上述思路,通过id 来区分不同的编辑页面(添加新文章的编辑页面id设为0即可)
传id到后台的两种方法:1)通过url传递文章id ,添加响应函数的参数 2)把id放在隐藏标签的value里面
利用方法1来修改add_page响应函数
view.py中add_article.html页面的显示页面响应函数中添加article_id参数
如果参数为0,直接返回添加新文章表单页面
不为0,获取数据库中主键为article_id的数据对象,传入前端
def add_page(request, article_id):
if str(article_id) == '0':
return render(request, 'blog/add_article.html')
art = models.Article.objects.get(pk=article_id)
return render(request, 'blog/add_article.html', {'article': art})
urls.py中对应url加上article_id
url(r'^edit/(?P<article_id>[0-9]+)$', views.add_page, name='add_page'),
文章页面page.html 添加修改文章的url
<!DOCTYPE html