1
我有以下型號:串行包括用戶的關注者在Django的REST框架
class User(AbstractUser):
...some fields...
relationships = models.ManyToManyField('self', through='Relationship', symmetrical=False, related_name='related_to')
class Relationship(models.Model):
from = models.ForeignKey(User, related_name='from')
to = models.ForeignKey(User, related_name='to')
type = models.IntegerField()
我有以下的用戶串行:
class UserSerializer(serializers.ModelSerializer):
class Meta:
model = User
fields = ('id', 'username', 'first_name', 'last_name', ...some fields...)
read_only_field = 'username'
它的偉大工程,但現在我需要讓追隨者與用戶嵌套。我第一次嘗試是創建一個UserBasicSerializer這樣的:
class UserBasicSerializers(serializers.ModelSerializer):
class Meta:
model = User
fields = ('id', 'username', 'first_name', 'last_name')
read_only_field = 'username'
,並添加以下到用戶串行:
followers = UserBasicSerializers(required=False, many=True, source='to')
不過,我得到AttributeError錯誤:關係對象沒有屬性FIRST_NAME
謝謝您!