我已经在Django中编写了基本模型序列化器,其中API模拟了数据模型。我现在有要求将用户偏好存储在数据库中。 api包含一个数组。如何在Django Rest Framework的REST API中为阵列数据编写串行器?
我的用户模型:
class User(models.Model):
email_id = models.EmailField(max_length=80, blank=True, primary_key=True)
class UserPreference(models.Model)
email_id = models.ForeignKey('User')
preference = models.CharField(maxlength=20)
理想的JSON POST请求会是这个样子
{
email:"[email protected]"
preference : [ 'books', 'food', 'lifestyle', 'travel']
}
我想这个JSON模式保存到UserPreference
模型。这需要多个插入选项。什么将是一个很好的串行器设计呢?
我试图
class UserPreferenceSerializer(serializers.ModelSerializer):
class Meta:
model = UserPreference
fields = ('email_id', 'preference')
“客户”模型是否以任何方式与“用户”相关? – mariodev
@mariodev感谢您的建议。我已将客户编辑为用户。 – Abhishek
您应该为首选项编写自己的模型,并使用UserPreference中的多对多字段或偏好模型中的ForeignKey。 – Jaakko