2016-05-11 4 views
0

は:ジャンゴ - PUserSlidertxt.objects.filter(ユーザ名= P [2])views.pyで

def main(request): 
    ..... 
    divvs = [str(i) for i in range(3)] 
    members = {} 
    p = [] 
    for divv in divvs: 
    members[divv] = PUserSlidertxt.objects.filter(ostan=os, shahr=sh, senf=senf) 
    p = PUser.objects.values('username') 
    asdf = PUserSlidertxt.objects.filter(username=p[2]) 
    ..... 

しかし、この行は動作しません:

asdf = PUserSlidertxt.objects.filter(username=p[2]) 

どのように編集する必要がありますか?

=====

我々が見ることができるHTMLファイルに{{ p }}を使用することにより:

[{ 'ユーザ名': 'respina'}、{ 'ユーザ名': 'mahtab'} 、{ 'ユーザ名': 'shargh'}、{ 'ユーザ名': 'テヘラン'}、{ 'ユーザ名': 'sayyare'}、 { 'ユーザ名': 'lutus'}]

答えて

2

p[2]のの辞書です

asdf = PUserSlidertxt.objects.filter(**p[2]) 

あるいは、明示的にキーで値を取得する:あなたはどちらか辞書を解凍することができ、

asdf = PUserSlidertxt.objects.filter(username={'username': 'shargh'}) 

の代わりに: -キーは、他の言葉で、Djangoはフィルタリングしようとするものと失敗します。

asdf = PUserSlidertxt.objects.filter(username=p[2]['username']) 
1

テンプレートのように、pは辞書の一覧です。したがって、インデックスだけでなくキーも指定する必要があります。

asdf = PUserSlidertxt.objects.filter(username=p[2]['username']) 
関連する問題