2012-04-04 8 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() 
関連する問題