我正在制作一个可重复使用的 Django 应用程序,假设它的名字是 Polls。无论在其父应用程序的 urls.py 中的何处配置此应用程序,它都应该可以正常工作。
考虑以下结构,就像 Django 教程中的那样
mysite/
manage.py
mysite/
__init__.py
settings.py
urls.py
asgi.py
wsgi.py
polls/
__init__.py
urls.py
admin.py
apps.py
models.py
views.py
因此,民意调查应用程序有自己的 urls.py 和自己的 views.py,可以通过在 mysite/mysite/urls.py 中添加一行来链接到任何其他应用程序,例如 mysite > 比如这个例子中的第 5 行 urls.py:
from django.urls import path, include
urlpatterns = [
path('polls/', include('polls.urls'))
]
在此示例中,投票应用程序的所有视图都将具有类似 https://somedomain.com/polls/the-relative-page-link 的链接。但是,即使我们将上述代码中的第 5 行编辑为其他基本路径,例如:
urlpatterns = [
path('another-path/', include('polls.urls'))
]
这样就会将like更改为https://somedomain.com/another-path/the-relative-page-link
我的问题是“民意调查”应用程序的某些视图包含与另一个表示服务器端 API 的视图通信的自定义 JavaScript 代码。因此,无论民意调查 URL 是在 /polls 下还是在 /another-path 下,为了使这种通信都能正常工作,我需要一种方法来动态查找民意调查应用程序,以便它可以生成可以与其 API 通信的正确 javascript 代码。在制作可重复使用的应用程序时,我该怎么做或者处理这种情况的传统方法是什么?