私は Django レルムに不慣れですが、そこにはたくさんの「魔法」があることがわかります。Django REST Framework を使用して、無料のユーザー登録を可能にするアプリを作成しています。私のユーザーは、Django ユーザーでは利用できないいくつかの追加フィールドを必要としています。だから私はユーザーを拡張するためにググった。このようなものを作成することでこれを行う必要があるという考えがあります
class MyUser(models.Model):
user = models.ForeignKey(User, unique=True)
city = models.CharField(max_length=50, blank=True, default='')
これは問題ありませんが、このシリアライザーがあります
class UserSerializer(serializers.ModelSerializer):
class Meta:
model = MyUser
fields = ('id', 'username', 'password', 'first_name', 'last_name', 'email', 'city')
したがって、問題は、このシリアライザーがここで「魔法」を行うことです。モデルに必要なフィールドを見つけようとします...ここにリストされているフィールドを持つユーザーが必要です。これらのフィールドはユーザーにあり、「都市」は新しいカスタムフィールドです。シリアライザーは、ユーザー モデル内を参照する必要があることを理解していません。
ここで何が欠けていますか?User内にいくつかのフィールドが必要であることをこのシリアライザに伝えるには? ユーザーも作成できる必要があります。