Django-Tastypie:如何访问 Bundle 中的 (Http)request 对象?

发布于 2024-12-03 22:14:05 字数 163 浏览 4 评论 0原文

我需要访问资源脱水中的 HttpRequest 对象 方法。

在文档中,它表明bundle.request是一个有效的属性(它是 在 resources.html 页面中)。当我尝试将其添加到我的代码中时,我得到一个 错误声称 Bundle' 对象没有属性 'request'。 什么给?

I need to access the HttpRequest object in my Resource's dehydrate
method.

In the docs, it shows that bundle.request is a valid attribute (it's
in the resources.html page). When I try to add it to my code, I get an
error claiming that Bundle' object has no attribute 'request'.
What gives?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

杀手六號 2024-12-10 22:14:05

Bundle对象具有request属性。

class Bundle(object):
    """
    A small container for instances and converted data for the
    ``dehydrate/hydrate`` cycle.

    Necessary because the ``dehydrate/hydrate`` cycle needs to access data at
    different points.
    """
    def __init__(self, obj=None, data=None, request=None):
        self.obj = obj
        self.data = data or {}
        self.request = request or HttpRequest()

无论如何,您可以在调用堆栈中验证高于 de一线 的 Resource 方法。

你能显示代码吗?

Bundle object has request attribute.

class Bundle(object):
    """
    A small container for instances and converted data for the
    ``dehydrate/hydrate`` cycle.

    Necessary because the ``dehydrate/hydrate`` cycle needs to access data at
    different points.
    """
    def __init__(self, obj=None, data=None, request=None):
        self.obj = obj
        self.data = data or {}
        self.request = request or HttpRequest()

Anyway, you can ovveride the Resource method higher than dehydrate in the call stack.

Could you show the code?

半世蒼涼 2024-12-10 22:14:05

我刚刚遇到了同样的问题,但在这里找到了正确的答案:
http://groups.google.com/group/django-tastypie/tree/browse_frm/thread/801f44af3f2dbe7b/a36f303380eacf96

似乎 django-tasty-pie 版本 0.9.9 没有此属性,但是0.9.10 版本可以!

因此,如果您使用 buildout,请查看 buildout.cfg
根据版本:
搜索 django-tastypie = 0.9.9

删除这个并查看您的安装选择的内容或将其替换为:

django-tastypie = 0.9.10

我仍然遇到此问题,因此打开了一个新链接,请参阅:

django-tastypie:无法访问脱水中的bundle.request(self,bundle)

在上面的问题中我发现,使用0.9.10 还不够,1.0.0 beta 版应该可以解决问题。

I just had the same problem, but found the correct answer over here:
http://groups.google.com/group/django-tastypie/tree/browse_frm/thread/801f44af3f2dbe7b/a36f303380eacf96

it seems django-tasty-pie version 0.9.9 didn't have this attribute but version 0.9.10 does!

so if you use buildout, look in to buildout.cfg
under versions:
search for django-tastypie = 0.9.9

remove this one and see what your install picks or replace it with:

django-tastypie = 0.9.10

I still have this problem, so opened a new link, see:

django-tastypie: Cannot access bundle.request in dehydrate(self,bundle)

in the question above I found out, that using 0.9.10 is not enough, version 1.0.0 beta should do the tric..

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文