我是 django 新手,正在尝试安装
django-livereload-server
在安装指南的某处,它说:
您需要注入 livereload javascript 的加载。你可以 通过以下两种方式之一执行此操作:
通过中间件添加 'livereload.middleware.LiveReloadScript' MIDDLEWARE_CLASSES(可能在最后):
MIDDLEWARE_CLASSES = (
...
'livereload.middleware.LiveReloadScript',
)
通过base.html(或类似)模板中的模板标签:
{% load livereload_tags %}
...
{% livereload_script %}
对于第一个解决方案,我注意到
MIDDLEWARE_CLASSE = ()
文件中没有 settings.py
元组(django 4.2.4)。只有一个 MIDDLEWARE_CLASSE = []
列表,将 'livereload.middleware.LiveReloadScript'
放入其中不起作用。 (在这种情况下,Live reload
检测到更改,但无法重新加载localhost:8000
。它说Reload 0 waiters: None
)
那么,我应该把
'livereload.middleware.LiveReloadScript'
放在哪里才能让它发挥作用?
如果我想使用第二种解决方案,步骤是什么?因为我在我的项目/应用程序中没有看到
base.html
。我应该自己创建吗?
感谢任何帮助!
使用:
VSCode
、django
、enve
、
已安装的软件包:
asgiref 3.7.2
beautifulsoup4 4.12.2
Django 4.2.4
django-livereload-server 0.4
dnspython 2.4.2
et-xmlfile 1.1.0
greenlet 2.0.2
pip 23.2.1
setuptools 63.2.0
six 1.16.0
soupsieve 2.4.1
sqlparse 0.4.4
tornado 6.3.3
typing_extensions 4.7.1
tzdata 2023.3
settings.py
应包含 MIDDLEWARE
的值。其他的都是错误的。以前是
MIDDLEWARE_CLASSES
,但不久前就改变了(不确定是哪个版本)。
base.html
中使用 - 你把它们放在哪里完全取决于你需要它们的地方。将它们放在其他所有内容都继承自的基本模板中将是确保它们在所有模板中可用的最简单方法。旁注:这听起来有点像你真的应该退后一步,做一个 django 教程 - settings.py 文件和模板如何工作是基础知识。我可以推荐 Djangogirls 教程,因为它非常好。