Tastypie cookbookの指示に従って、「ジョブ」モデルへのアクセスに使用する URL を、PK ではなく UUID で参照されるように変更しました。
class JobResource(ModelResource):
owner = fields.ForeignKey('job.api.UserResource', 'user')
inputs = fields.ManyToManyField('job.api.JobInputResource', 'inputs', full=True)
outputs = fields.ManyToManyField('job.api.JobOutputResource', 'outputs', full=True)
class Meta:
queryset = Job.objects.all()
def prepend_urls(self):
return [
url(r"^(?P<resource_name>%s)/(?P<guid>[\w\d_.-]+)/$" % self._meta.resource_name, self.wrap_view('dispatch_detail'), name="api_dispatch_detail"),
]
ただし、resource_uri
関連する入力とオブジェクトの はこの変更を反映せず、PK ソース URL を引き続き参照します。この問題と、対応する解決済みのコミット (1367d7a45587b2af9969d16c3c641a255a8d5b8e) が見つかりました。これは、私の窮状に直接関連しているように見えますが、ドキュメントを見つけることができませんでした: 実際にresource_uri
s を変更する方法。