什么是Django.utils.functional.\u proxy\uu对象,它有什么帮助?

2024-05-14 18:04:00 发布

您现在位置:Python中文网/ 问答频道 /正文

我多次偶然发现一个django.utils.functional.__proxy__对象,最后一次是在下面的代码中:

def formfield_for_choice_field(self, db_field, request, **kwargs):
    print db_field.help_text

(打印结果为<django.utils.functional.__proxy__ object at 0x7fc6940106d0>

现在,为什么这些东西被包裹在这个物体上?它的主要目的是什么?更重要的是,如何访问代理对象后面的值?我查看了Django的源代码,看到了一些关于惰性计算的东西,但是有太多的包装器和包装对象,无法完全理解发生了什么。如有任何细节,将不胜感激。


Tags: 对象django代码selffieldfordbrequest
1条回答
网友
1楼 · 发布于 2024-05-14 18:04:00

它是一个转换字符串-一个标记为已转换的字符串,但其实际转换结果在对象在字符串中使用之前无法确定。请参阅Django文档:https://docs.djangoproject.com/en/dev/ref/unicode/#translated-strings

调用unicode(object)将生成Unicode字符串。另外,如果调用对象的__dict__,可以在_proxy____args下找到它的数据。

相关问题 更多 >

    热门问题