我有这个网页http://127.0.0.1:8000/user/tom-brandy/
。关于在Django中获取网址的问题
页面上有链接到http://127.0.0.1:8000/signup/
。
如何在我的视图中提取tom-brandy
以呈现signup
页面?
我正在考虑使用request.META['HTTP_REFERER']
并使用字符串操作来获取它,但它听起来像是一个错误的方式去做这件事。
有没有更好的方法来做到这一点?
我有这个网页http://127.0.0.1:8000/user/tom-brandy/
。关于在Django中获取网址的问题
页面上有链接到http://127.0.0.1:8000/signup/
。
如何在我的视图中提取tom-brandy
以呈现signup
页面?
我正在考虑使用request.META['HTTP_REFERER']
并使用字符串操作来获取它,但它听起来像是一个错误的方式去做这件事。
有没有更好的方法来做到这一点?
你可以明确地传递用户信息的注册链接作为一个GET参数/signup/?user=tom-brandy
您还可以使用会议在user
网页设置一个任意变量和拉它在注册页面中。这可能是最干净和最透明的方法。
('user/(?P<user>[\w-]+)/', 'my.user_view')
def user_view(request, user):
request.session['last_visited_user_page'] = user
# ...
def signup_view(request):
last_visited_user_page = request.session.get('last_visited_user_page')
# ...
您可以使用提取TOM-白兰地出http://127.0.0.1:8000/signup/tom-brandy并将您的网址的正则表达式作为第一个参数传递给您的注册视图
您可以使用HttpRequest.path_info
或HttpRequest.path
的要求。