0
デフォルトでDjango Rest Frameworkによって生成されるAPIエンドポイントのセットがあります。この例の例:DRFのルートに別の引数を追加
^api/^^provinces/(?P<pk>[^/.]+)/$ [name='province-detail']
は、http://127.0.0.1:8000/api/provinces/02/
を生成します。私は例えば別のエンドポイントを持つことができるように、別のルートを追加したい
class ProvinceSerializer(serializers.ModelSerializer):
""" Serializer to represent the Province model """
class Meta:
model = Province
fields = ("name", "code")
:
^api/^^provinces/(?P<pk>[^/.]+)/(?P<product>[^/.]+)/$ [name='province-product-detail']
私はこのhttp://127.0.0.1:8000/api/provinces/02/apple/
好きですし、アクセスできるように、それは怒鳴る実際のコードを使用しています シリアライザのメソッドの第2引数私はこのようにしようとしています:
class ProvinceSerializer(serializers.ModelSerializer):
""" Serializer to represent the Province model """
class Meta:
model = Province
fields = ("name", "code")
@detail_route(methods=['post'])
def set_product(self, request, product=None):
return product
シリアライザがビューであることが重要だと思います。あなたはあなたの意見を投稿できますか? – jarussi