Django rest framework HyperlinkedRelatedField暂时为只读

Django rest framework HyperlinkedRelatedField暂时为只读,django-rest-framework,Django Rest Framework,我已按以下方式声明字段: field=serializers.HyperlinkedRelatedField( 查看\u name='field-detail', source='feature', queryset=Field.objects.all() ) 您知道如何临时将该字段设置为只读吗? 不幸的是,这样的结构不起作用:( serializer.Meta.extra_kwargs={ 'field':{'queryset':无,'read_only':True} } 当字段在模型中声

我已按以下方式声明字段:

field=serializers.HyperlinkedRelatedField(
查看\u name='field-detail',
source='feature',
queryset=Field.objects.all()
)
您知道如何临时将该字段设置为只读吗? 不幸的是,这样的结构不起作用:(

serializer.Meta.extra_kwargs={
'field':{'queryset':无,'read_only':True}
}
当字段在模型中声明为ForeignKey时,它可以正常工作

Foo类(models.Model):
字段=模型。外键(…)
类FooSerializer(serializers.HyperlinkedModelSerializer):
类元:
model=Foo
字段=('url','field',…)
然后(正如我上面提到的),甚至:

serializer.Meta.read_only_fields=('field',)

在使用
HyperlinkedRelatedField

field = serializers.HyperlinkedRelatedField(
    view_name='field-detail',
    lookup_field='feature',
    # set read_only to True
    read_only=True 
)
阅读文档:


您好,我已经尝试过了,但它不起作用,因为我收到了错误消息:AssertionError:当设置read_=
True
时,关系字段不应该提供
queryset
参数。不过这不是重点,我可以在声明级别删除此查询参数,这将很好,但我不想让此字段在有些特殊情况下,大多数时候我希望这个字段是“可编辑的”。谢谢