我正在使用Tasty Pie来创建服务。我已应用过滤,以便根据非PK值进行搜索: 我的api.py文件:
class TestResource(ModelResource):
class Meta:
queryset = ack_dadc.objects.all()
authorization = Authorization()
filtering = {
'DistributorUID': ['exact'],
}
detail_allowed_methods = ['get', 'post', 'put', 'delete']
我的问题是: 我可以根据http:localhost / api / v1 / test /执行PUT请求吗?DistributorUID = steve 我已经google了很多但没有运气我只想根据非PK值更新数据库。
答案 0 :(得分:1)
您将在Tastypie Cookbook中找到如何使用普通URL参数实现此目的的示例:http://django-tastypie.readthedocs.org/en/latest/cookbook.html#using-non-pk-data-for-your-urls
答案 1 :(得分:-1)
我认为你不能这样做:过滤器只适用于 GET 请求。
因此,如果您想实现这一点,您必须完成2项请求:
GET http:localhost/api/v1/test/?DistributorUID=steve
获取资源的ID,然后
PUT http:localhost/api/v1/test/ID
根据其ID更新它。