次のように、UserResource と ChannelResource の 2 つのリソースがあります。
class ChannelResource(ModelResource):
class Meta:
queryset = Channel.objects.all()
resource_name = 'channels'
class UserResource(ModelResource):
channels = fields.ToManyField(ChannelResource, 'channels', full=True)
stories = fields.ToManyField('core.api.StoryResource', 'stories', full=True)
class Meta:
queryset = User.objects.all()
resource_name = 'users'
単一のユーザーに関するユーザー リストと情報を取得できます (そのユーザーが所有するチャンネルを含む)。
http://localhost/api/users/1/?format=json&limit=0
{
channels: [
{
id: 1,
identifier: "default",
name: "default",
resource_uri: "/api/v1/channels/1/"
}],
id: 1,
name: threejeez
}
しかし、ユーザーのチャンネル リストを取得しようとすると、エラーが発生します。
http://localhost/api/users/1/channels/?format=json&limit=0
error_message: "Invalid resource lookup data provided (mismatched type)."
上記の json から、リソースが api/channels/ にあることがわかりますが、api/users/1/channels に配置したいと考えています。どうすればこれを達成できますか?
ありがとう!