2012-02-13 9 views
0

私はsubsという変数にオブジェクトのセットを格納しています。列subscribed_toは異物です。オブジェクトがクエリーセット結果の外部キーであるかどうかをチェック

はrelated_objectは、簡単な方法で、このリストにあるかどうかを確認行うにはどのような方法があります:

def check_subscription_status(user, related_object): 
    subs = get_user_subscriptions(user) # returns filter queryset 
    subscribed = False 
    for s in subs: 
     if s.subscribed_to == related_object: #related object is the potential match 
      subscribed = True 
      break 
    return subscribed 

答えて

0
return (related_object in [s.subscribed_to for s in subs]) 

ETA:より良い方法:

return subs.filter(subscribed_to=related_object).count() > 0 
+0

あなたの考えは正しいですが、メソッドとの互換性を持たせるために、returnは 'return subs.filter(subscribed_to = related_object).count()'でなければなりません。 –

+0

ありがとう..もう一つの簡単なコメントは、subsのs.subscribed_toが無効な構文エラーを投げていることです。 – Brenden

+0

それは奇妙です。おそらくあなたはエラーに貼り付けることができますか? –

関連する問題