我是 django 和 htmx 的新手,我试图通过将所有只给出 htmx 响应的 url 放入另一个文件来保持我的 urls.py 更干净。 为了将这个文件包含到我的路径中,我使用了 djangos include 函数,因为我想通过一个名为 /htmxFunctions/* 的 url 路由所有特定于 htmx 的请求 文件夹结构为:
项目
我的 url 文件看起来像这样:
# base_project/urls.py
urlpatterns = [
path("", include("my_app.urls")),
path("admin/", admin.site.urls),
path("__reload__/", include("django_browser_reload.urls")), #tailwind specific
]
#my_app/urls.py
urlpatterns = [
path("", views.index, name="index"),
...
# htmx-funktionen
path("htmxFunctions", include("my_app.htmx.htmx_urls")),
]
my_app/htmx/htmx_urls.py
urlpatterns = [
path("test", views.test, name="test"),
path("", views.index, name="test"), # for testing purposes
]
我的问题是,使用
hx-post="/htmxFunctions/test/"
只会导致 404 错误。但一般包含似乎有效,因为仅使用 hx-post="/htmxFunctions"
即可给出正确的响应。
有人知道如何解决这个问题吗?
已经检查了拼写错误,可能尝试了在 hx-post 和我的路径中使用斜线的每一种组合,但似乎没有任何效果。还尝试了命名空间,但并没有真正得到它应该做的事情。
path(
"htmxFunctions",
include(("my_app.htmx.htmx_urls", "htmx"), namespace="htmx"),
),