次のようなリソースがあります。
models.py
class Place(models.Model):
id = models.CharField(max_length = 256, primary_key = True)
name = models.CharField(max_length = 1024)
class Review(models.Model):
id = models.CharField(max_length = 256, primary_key = True)
p_id = models.ForeignKey(Place, related_name = 'place_review')
text = models.TextField()
api.py
class ReviewResource(ModelResource):
class Meta:
queryset = Review.objects.all()
resource_name = 'place_review'
class PlaceResource(ModelResource):
place_review = fields.OneToManyField(ReviewResource,
'place_review',
full=True)
class Meta:
queryset = Place.objects.all()
resource_name = 'place'
上記のモデルとリソースを使用して、Place のリスト ビューのレビュー数を 3 に制限したい、詳細/表示ビューでもっと多くのレビューを表示したい (たとえば、レビューに画像が含まれている場合は、詳細ビューで表示し、非表示にするなど、別のスタイルで表示することができます)リストビューで)
入れようとしましattribute=lambda bundle: Review.objects.all()[:3],
たが、場所のレビューがないときはいつでも、The model '' has an empty attribute ' at 0x7f0a180d0de8>' and doesn't allow a null value.
メッセージで失敗します。
この場合、何を提案できますか? この問題の回避策はありますか?