我的urlpatterns中有以下URL:
url(r'^user/(?P<user_pk>[0-9]+)/device/(?P<uid>[0-9a-fA-F\-]+)$', views.UserDeviceDetailView.as_view(), name='user-device-detail'),
Run Code Online (Sandbox Code Playgroud)
注意它有两个字段:user_pk和uid.URL看起来像:https://example.com/user/410/device/c7bda191-f485-4531-a2a7-37e18c2a252c.
在此模型的详细视图中,我正在尝试填充url包含返回模型的链接的字段.
在序列化器中,我有:
url = serializers.HyperlinkedIdentityField(view_name="user-device-detail", lookup_field='uid', read_only=True)
Run Code Online (Sandbox Code Playgroud)
但是,我认为这是失败的,因为URL有两个字段:
django.core.exceptions.ImproperlyConfigured:无法使用视图名称"user-device-detail"解析超链接关系的URL.您可能未能在API中包含相关模型,或者未
lookup_field在此字段上错误地配置属性.
当URL包含两个或更多URL模板项时,如何使用HyperlinkedIdentityField(或任何Hyperlink*Field)?(查询字段)?