Django Tastypie lança uma 'profundidade máxima de recursão excedida' quando full = True na relação reversa.
Eu recebo uma profundidade máxima de recursão excedida se executar o código abaixo:
from tastypie import fields, utils
from tastypie.resources import ModelResource
from core.models import Project, Client
class ClientResource(ModelResource):
projects = fields.ToManyField(
'api.resources.ProjectResource', 'project_set', full=True
)
class Meta:
queryset = Client.objects.all()
resource_name = 'client'
class ProjectResource(ModelResource):
client = fields.ForeignKey(ClientResource, 'client', full=True)
class Meta:
queryset = Project.objects.all()
resource_name = 'project'
# curl http://localhost:8000/api/client/?format=json
# or
# curl http://localhost:8000/api/project/?format=json
Se um conjunto completo = Falso em uma das relações funciona. Eu entendo porque isso está acontecendo, mas eu preciso de ambas as relações para trazer dados, não apenas o "resource_uri". Existe uma maneira Tastypie para fazer isso? Eu consegui resolver o problema criando um método de serialização no meu modelo de projeto, mas está longe de ser elegante. Obrigado.