文章保存前浏览器奔溃的现象在所难免。折中的办法是使用者能随时点击保存并继续编辑。
为了避免在保存前填写过多字段,将标题、内容设置为保存的前置条件,而类别、标签、摘要设置为文章保存的后置条件,以此提高用户体验。
代码实现
在model中Post类的category字段增加属性:
class Post(models.Model):
……
category = models.ForeignKey(Category,verbose_name='类别',blank=True,null=True)
……
blank为字段空值,浏览器不检查;null为字段空值,数据库不检查。即允许字段为空。
同时模板中应相应访问代码,增加默认值。
Classified into <a href="{% url 'blog:category' post.category.pk|default:0 %} ">{{post.category.name}}</a>
即,设置默认值为0,使其通过urlconf匹配,如果post对应的category没有设置,则{{ post.category.name}} 为空字符,不会显示链接。
另外,为了避免因网络问题,造成多次提交,将文章标题增加unique属性,即文章标题唯一性。
# 文章标题
title = models.CharField('标题',max_length=70,unique=True)
同理,类别、标签的name字段也增加设置unique属性。
Last Modified·2017年7月4日 18:43
您尚未登录,请先登录才能评论。