如何使用get()
或其他CreateView方法获取URL关键字参数?我尝试使用self.kwargs['arg_name']
,但没有结果。
提前谢谢。
答案 0 :(得分:0)
您可以使用以下代码
在视图中访问网址关键字方法一
要访问基于类的视图中的网址参数,请使用self.args
或self.kwargs
,以便您通过self.kwargs['user_id']
url(r'^users/(?P<user_id>[0-9]+)/$',
views.your_view_name.as_view()),
在youe views.py中:
class your_class_name(CreateView):
def view_name(self):
upk=self.kwargs.get['user_id']
print user_id
...
方法2
如果您在网址中传递关键字
/your_url?user_id=1
views.py
def view_name(request):
user_id = request.GET.get('user_id')
print user_id
....
的参考资料
希望这可以帮助你
答案 1 :(得分:0)
你是说这个吗?
class CreateMessageView(LoginRequiredMixin, CreateView):
def get(self, request, *args, **kwargs):
ret = super(CreateMessageView, self).get(request, *args, **kwargs)
upk=self.kwargs['user_id']
return ret
我测试了它......工作...... NIKHILS RANEs的答案有点正确。此行upk=self.kwargs['user_id']
与他的upk=self.kwargs.get['user_id']
不同。也许这就是你的问题