我使用 django 2.1 感谢您的帮助:)
答案 0 :(得分:0)
您可以使用reverse
中的django.url
进行此操作,并且可以传递随机的args
或kwargs
link。
说您的网址就像
urlpatterns = [
path('articles/', your_article_view),
path('articles/<slug:slug>/', your_article_slug_view),
]
,并且可以从您的article_view
重定向到article_slug_view
,
reverse('articles', args=['hello'])
'/articles/hello' # url
您可以生成uuid
并以此传递它,这将始终确保每次随机生成不同的url。无论您想做什么。
答案 1 :(得分:0)
首先,让我说这看起来像是反模式。
在Django上,您可以设置与某些表达式匹配的url:
path('secret/<slug:passwd>/', views.super_secret, name="secret")
然后,您可以使用密钥重定向到该网址:
if form.is_valid():
some_key = #some random key
cache.set(some_key, True, 3)
return HttpResponseRedirect(reverse('secret', args=(some_key,)))
然后从视图secret
的缓存中检查密钥。