TheNone
TheNone

Reputation: 5802

HTML form in Django REST frameWork and RelatedField

I have the user settings model:

class UserSettings(models.Model):
     user = models.ForeignKey('userprofile.UserProfile'  related_name='own_user')
     lookup_user = models.ManyToManyField('userprofile.UserProfile')

I have written a custom field:

class SettingKeywordsField(serializers.RelatedField):
     def to_native(self, value):
         eturn { str(value.pk): value.username }

and using in serializer:

class SettingsSerializer(serializers.ModelSerializer):
      lookup_user = SettingKeywordsField(many=True)
      class Meta:
         model = UserSettings
         fields = ('lookup_user')

In this situation, lookup_user is not appear in html form tab.

What is wrong in my serializer?

Upvotes: 0

Views: 355

Answers (1)

Anentropic
Anentropic

Reputation: 33853

serializers.RelatedField defaults to read_only=True ...try:

class SettingsSerializer(serializers.ModelSerializer):
    lookup_user = SettingKeywordsField(many=True, read_only=False)
    class Meta:
        model = UserSettings
        fields = ('lookup_user')

Upvotes: 1

Related Questions