ManyRelatedManager は Iterable ではありません。オブジェクトを間違って取り出そうとしていると思います。質問する

ManyRelatedManager は Iterable ではありません。オブジェクトを間違って取り出そうとしていると思います。質問する

私はイベントのリストから個々のイベントを抽出し、それらに対してアクションを実行しようとしているだけです。現在私が見ているコードは次のとおりです。

    user = request.user.get_profile()
    followed = user.eventList
    eL = [getEvent.getEvent(e_id) for e_id in followed]

まず、現在ログインしているユーザーを取得し、そのユーザーの eventList を調べて、それを反復処理します。上記のエラーが発生します。行が抜けている可能性がありますか?

ベストアンサー1

エラーからeventList多対多フィールドであると想定すると、.all()関連オブジェクトを取得するには を使用する必要があります。多対多フィールドはマネージャーなので、実際のオブジェクトを返すクエリセットを構築するために使用できます。

user = request.user.get_profile()
eL = user.eventList.all()

おすすめ記事