我有一个列表视图,在这个视图中我有一个url,通过单击它,它会将我指向详细视图。我希望这个url是一个平面url,以这种方式127.0.0.1:8000/?id=4
,id是对象的id,我怎么做?我想我可以通过拥有一个serializer.SerializerMethodField
来实现一个get_url
函数。有更好的方法吗?你知道吗
编辑
现在我有了这样的url 127.0.0.1:8000/4/
,这是我的序列化程序
#serizlier.py
class SampleSerizlier(serizlier.ModelSerializer):
url = serializers.HyperlinkedIdentityField(
view_name="app-name:view-name", lookup_field='id'
)
class Meta:
model = Model
fields = "__all__"
HyperlinkIdentityField
以这种方式生成url 127.0.0.1:8000/4/
但是我想以上面提到的方式生成url。我想通过SerializerMethodField
和定义一个get_url
来做到这一点,并且手工地做每件事。有更好的办法吗?谢谢你的帮助。你知道吗
我想 在您的模型中
在序列化程序中:
添加url将是
你的观点是127.0.0.1:8000/,在'?id=4'可以通过请求数据接收'id'。你知道吗
在视图中,检索ID时使用:
如果找到了一个ID,则可以显示检索到的对象的详细信息,否则显示默认页面。你知道吗
相关问题 更多 >
编程相关推荐