私はこのModelResourceを持っています:
class ProjectResource(ModelResource):
id = fields.IntegerField('id', readonly=True)
def alter_list_data_to_serialize(self, request, data):
return data['objects']
class Meta:
queryset = Project.objects.all()
list_allowed_methods = ['get', 'post']
detail_allowed_methods = ['get', 'post', 'put', 'delete']
resource_name = 'projects'
include_resource_uri = False
#fields = ['id', 'title', 'date_created', 'date_modified']
excludes = []
always_return_data = True
authorization = Authorization()
GET /projects/1 または POST /projects の応答は次のとおりです。
'{
"date_created": "2012-08-29T16:47:55.417000+00:00",
"date_modified": "2012-08-29T16:47:55.417000+00:00",
"id": 1,
"title": "1st Testing Project"
}'
しかし、私が PUT /projects を実行すると、応答は次のようになります。
'{
"date_created": "2012-08-29T16:47:55.417000+00:00",
"date_modified": "2012-09-05T18:58:39.746336+00:00",
"id": 1,
"pk": "1",
"title": "EDITED project"
}'
そのため、追加の「pk」フィールドがあります。どうやってそこにたどり着いたのですか?どうすればそれを取り除くことができますか?PUT を実行するときだけ存在します。何か案は?ありがとう。