2016-05-10 5 views
0

私はリストをフィルタリングし、これをユーザに返すために、Djangoのビューに情報を渡そうとしています。Kwargs is not passing

url(r'^info/user/(?P<user_id>\d+)$', views.UserInfoView, name='active_reservations'),

と定義された次のビュー:ので、私は私のurls.pyで次の持っているために

def UserInfoView(request, **kwargs): 
    template = "parking/detail_user.html" 
    user = User.objects.filter(user=self.kwargs['user_id']) 
    context = {"user": user} 
    return render(request, template, context) 

をしかし、私はこれをしようとするたびに、私はエラーを取得:NameErrorを/ info/user/1 グローバル名 'self'は定義されていません

アイデア?

答えて

1

あなたはビュー機能を変更する必要があります。 ** kwargsをに置き換えます。user_id

def UserInfoView(request, user_id): 
    template = "parking/detail_user.html" 
    user = User.objects.filter(user=user_id) 
    context = {"user": user} 
    return render(request, template, context) 
1

kwargsは自己の属性ではありません。あなたのコードは次のようになります。

user = User.objects.filter(user=kwargs['user_id'])

関連する問題