##質問内容
python
1 2PackageQuerySet(models.query.QuerySet): 3 def prefetch_is_open(self): 4 for package_object in self: 5 package_object.is_open = some_logic_to_find_open_or_not 6 return self 7 8class PackageManager(models.Manager): 9 def get_queryset(self): 10 return PackageQuerySet(self.model, using=self._db)
Packageモデルは is_open
というアトリビュートを持っていないが、 package.is_open
のような形で使いたいです。
package_object.is_open = some_logic_to_find_open_or_not
の箇所のあとに package_object.save()
をしなければいけないのかなと思っていますが、Packageクラス以外の Manager
, QuerySet
では同じようなコードでうまく動作しています。
質問内容が漠然で申し訳ありませんが、改善点などご教授いただけたらと思います。
##試したこと
python
1PackageQuerySet(models.query.QuerySet): 2 def prefetch_is_open(self): 3 for package_object in self: 4 package_object.is_open = some_logic_to_find_open_or_not 5 LOGGER.info(package.is_open) 6 LOGGER.info(package.is_open) 7 return self
とすると、
python
1True 2(表示されない)
とログが残り、
->( 出力しようとすると... ) AttributeError
となります。
あなたの回答
tips
プレビュー