我一直在阅读django文档的这一部分:https://docs.djangoproject.com/en/3.0/topics/forms/media/#assets-静态定义这给我提出了一个问题。
我认为为了让浏览器使用动画和动作js文件,它们必须在脚本html标记中引用。
由于在表单小部件中定义js资产,如文档中所示,不会在html模板中添加任何标记,我不知道浏览器将如何检索这些文件。
我将分部分回答这个问题。
如何检索文件
还记得你的settings.py中的STATICILES_DIRS设置吗?我认为Django在通过表单呈现文件时,会自动将其附加在文件名之前,然后将其包含在模板中(下一部分将详细介绍(。
换句话说,Django处理模板中静态文件的方式与处理模板中的静态文件的方法相同,但不必手动加载标记。
不添加任何标签
你有没有注意到,当你处理表单时,你键入的都是CharFields之类的,Django会自动将它们加载到body标记中?我相信Django会自动做到这一点(关键字参数的处理方式可以与表单的其他部分不同(,但会加载到script标记中。