2012-04-04 2 views
0

UserResource 내에 프로필 데이터를 추가하려고하는데이를 수행 할 방법을 찾을 수 없습니다. Tastypie - 중첩 된 리소스로 사용하는 프로필

나는이 같은 docs에서 발견 조금 코드, 불통 :

class UserResource(ModelResource): 
    profile = fields.ForeignKey(UserProfile, 'profile', full=True) 

    class Meta: 
     queryset = User.objects.all() 
     resource_name = 'user' 
     excludes = ['email', 'password', 'is_active', 'is_staff', 'is_superuser'] 

     #authentication = BasicAuthentication() 
     authorization = DjangoAuthorization() 

    def dispatch(self, request_type, request, **kwargs): 

     kwargs['profile'] = request.user.get_profile() 
     return super(UserResource, self).dispatch(request_type, request, **kwargs) 

를하지만 나에게이 오류주고있다 :

error_message: Cannot resolve keyword 'profile' into field. Choices are: date_joined, email, first_name, groups, id, is_active, is_staff, is_superuser, last_login, last_name, logentry, password... 

이 문제를 해결하는 방법에 대한 어떤 생각을?

감사합니다.

답변

0

먼저 모델이 아닌 ProfileResource을 사용해야합니다. 두 번째로 User.profile이 프로필을 확인합니다. 아마도 다음과 같을 것입니다 :

class UserResource(ModelResource): 
    profile = fields.ForeignKey('myapp.api.resources.ProfileResource', 'profile', full=True) 

    class Meta: 
     queryset = User.objects.all() 
     resource_name = 'user' 
     excludes = ['email', 'password', 'is_active', 'is_staff', 'is_superuser'] 

     #authentication = BasicAuthentication() 
     authorization = DjangoAuthorization() 
관련 문제