1. 一个项目中有多个app,这些app有相同的url,怎么区分?
在urls.py 中添加app_name='app_name'#app的名称。通过app_name加以区分。在html模板中可以调用<li><a href="{% url 'app_name:detail' %}">详情页</a></li>。
2. Django模板Template中, {{name}}是变量名。{% for perple in perple_list %}是快标签。
如果需要在模板中加载css,新建文件夹static, 然后需要在settings.py中设置,STATIC_URL='/static/',STATIC_DIR=(os.path.join(BASE_DIR,'static/'),)。最后,在html中要加上{% load static %}。
3. Django1.9之后的版本中,外键ForeignKey()中的on_delete参数是必须的。
4. 模板中若只需要显示前几个字,代码:<li>{{article.content|truncatechars:20|striptags}}</li>.
5. 添加富文本编辑器后,若在Django后台页面编辑使用了回车,在页面中会出现<p标签,此时需要在模板中使用了富文本的文字前后加上:{% autoescape off %}..........{% endautoescape %}。可以保持富文本编辑的格式。
6. path('search/<int:id>',views.serach.as_view(),name='serach'),设置search的目的是在模板中使用更加方便。
{% url 'app_name:search' article.id %}。直接使用search就可以找到对应的url。
7.Django中外键ForeignKey的三种用法:
Author=models.ForeignKey(User,on_delete=models.DO_NOTHING,verbose_name='作者')。User被删除时文章不作任何操作。
Article=models.ForeignKey(Article,on_delete=models.CASADE,verbose_name='文章')。当文章删除时,响应的外键链接也删除。
Article=models.ForeignKey(Article,on_delete=SET——DEFAULT,default=1,verbose_name='文章')
当文章删除后,设为默认值。