如何在不传递用户喜欢的参数的情况下显示 /account/profile?
How to show /account/profile without pass the user like parameter?
我想在 url /account/profile
中显示用户个人资料。
我有一个基于 class 的详细视图,
class UserDetail(generic.DetailView):
model = User
slug_field = 'username'
slug_url_kwarg = 'username'
template_name = 'myuser/user_detail.html'
我有一个错误:
AttributeError at /accounts/profile/
Generic detail View UserDetail must be called with either an object pk or a slug.
如何在不像 url 中那样传递用户名的情况下对用户名收费?
(即:/account/prifle/username
),用户已经通过身份验证。
我在这里看到类似的东西:http://programtalk.com/vs2/?source=python/12247/horas/apps/profiles/views.py 但对我不起作用。
我尝试修改get_queryset
、dispatch
,但没有任何效果,我不知道在哪里修改才能得到正确的结果。
任何的想法?谢谢
该代码非常奇怪,您不应该遵循它。不过,在您的情况下,覆盖 get_object
是正确的想法;但该方法实际上应该总是 return 一个对象。
class UserDetail(generic.DetailView):
model = User
def get_object(self, *args, **kwargs):
return self.request.user
我想在 url /account/profile
中显示用户个人资料。
我有一个基于 class 的详细视图,
class UserDetail(generic.DetailView):
model = User
slug_field = 'username'
slug_url_kwarg = 'username'
template_name = 'myuser/user_detail.html'
我有一个错误:
AttributeError at /accounts/profile/
Generic detail View UserDetail must be called with either an object pk or a slug.
如何在不像 url 中那样传递用户名的情况下对用户名收费?
(即:/account/prifle/username
),用户已经通过身份验证。
我在这里看到类似的东西:http://programtalk.com/vs2/?source=python/12247/horas/apps/profiles/views.py 但对我不起作用。
我尝试修改get_queryset
、dispatch
,但没有任何效果,我不知道在哪里修改才能得到正确的结果。
任何的想法?谢谢
该代码非常奇怪,您不应该遵循它。不过,在您的情况下,覆盖 get_object
是正确的想法;但该方法实际上应该总是 return 一个对象。
class UserDetail(generic.DetailView):
model = User
def get_object(self, *args, **kwargs):
return self.request.user