【发布时间】:2020-06-29 05:18:29
【问题描述】:
我想将 Django 中的 URL 模式与外部 URL 相关联,因为我的某些视图需要指向不同的子域。请注意,所有子域都使用完全相同的 Django 实例,所以我仍然在我的应用程序中引用本地视图。在某些情况下,我只需要将用户发送到不同的域。我已经考虑了站点框架,但还有其他因素阻止我使用它。解决方案似乎差不多了,但我有一个绊脚石。
我这样做:
urlpatterns += [
path("https://subdomain.mywebsite.com/", include("site.urls")),
]
这项工作。但是,当我像这样生成我的 URL 时:
<a href="{% url "somepage" %}">link</a>
然后它导致:
<a href="/https://subdomain.mywebsite.com/record/">link</a>
也就是说,生成的网址前面有一个斜杠。除此之外,一切正常。我怎样才能摆脱那个?
【问题讨论】:
-
你不能使用这样的 url 模式,这不是它们的设计目的。它们旨在用于为您的应用程序视图提供服务的路径
-
让我更改示例 URL --- 该路径确实是我的应用程序视图的一部分,但它位于不同的域中。
-
你能发布你的视图函数/基于类的视图吗?
-
在不同的域上怎么样?您是在使用多租户的站点框架(因此是相同的 Django 应用程序,但被分割成多个部分),还是一起使用不同的 Django 实例?
-
它是同一个 Django 实例(由于不相关的原因没有使用站点框架,但它是完全相同的 Django 实例)。
标签: django django-templates url-routing