0

首先,我在 url 中阅读了这个 django 用户名,而不是 id它有帮助,但没有解决我的问题。views.py如果可以的话,我不想写任何代码。

我在urls.py. 注意:在这两种情况下,我都会得到name 'username' is not defined.

1

urlpatterns = patterns('',
    url(r'^(?P<username>[\w.@+-]+)/$',
        login_required(
            DetailView.as_view(
                model=User,
                username=username,
                template_name='account/user_detail.html'),
            login_url='/accounts/login/'
        )
    ),
)

2

urlpatterns = patterns('',
    url(r'^(?P<username>[\w.@+-]+)/$',
        login_required(
            DetailView.as_view(
                model=User,
                queryset=User.objects.get(username=username),
                template_name='account/user_detail.html'),
            login_url='/accounts/login/'
        )
    ),
) 
4

1 回答 1

1

您不能在 urlconf 中进行那种动态过滤。子类 DetailView 并覆盖get_queryset以过滤self.kwargs['username'].

于 2013-02-13T21:00:16.903 回答