gpt4 book ai didi

django - Django Tastypie 中 'obj_get' 的正确实现是什么?

转载 作者:行者123 更新时间:2023-12-04 15:24:51 26 4
gpt4 key购买 nike

我对 Django 和 Tastypie 很陌生。我只想从查询中返回一个对象。我几乎尝试了所有方法,但似乎无法找到解决方案。这是我的代码如下:

class ProfileResource(ModelResource):
person = fields.ForeignKey(UserResource, 'user', full=True)

class Meta:
queryset = Person.objects.all()
resource_name = 'profile'
authentication = BasicAuthentication()
authorization = DjangoAuthorization()
serializer = Serializer(formats=['json'])

现在我遇到的问题是如何使用 request.user 从单个资源返回单个用户对象.

最佳答案

如果您只想显示一个资源,我可能会创建新的资源 View (命名为 my_profile),该 View 将使用 kwargs 中的用户调用普通详细信息 View 并删除其他 url:

from django.conf.urls import url
from tastypie.utils import trailing_slash
class ProfileResource(ModelResource):
...
def base_urls(self):
return [
url(r"^(?P<resource_name>%s)%s$" % (self._meta.resource_name, trailing_slash()), self.wrap_view('dispatch_my_profile'), name="api_dispatch_my_profile")
]

def dispatch_my_profile(self, request, **kwargs):
kwargs['user'] = request.user
return super(ProfileResource, self).dispatch_detail(request, **kwargs)

关于django - Django Tastypie 中 'obj_get' 的正确实现是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12990547/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com