【问题标题】:Can't access items() of a dictionary returned by a property无法访问属性返回的字典的 items()
【发布时间】:2013-09-25 22:37:10
【问题描述】:

我无法访问由属性返回的字典的 items(),即

{{obj.prop}}

返回字典,而

{{obj.prop.items}}

为空。 这是房产本身

@property
def prop(self):
    return self.__mydict

有什么问题?

【问题讨论】:

  • 不知道。也许您应该显示该属性的代码。
  • 字典存在并不意味着它包含任何内容。你确定字典有内容吗?
  • {{obj.prop}} 显示字典的内容
  • 我试图在我的 views.py 中创建一个字典,一切正常,但它不适用于我的属性
  • 它只是我在models.py中导入的obj类的字典

标签: python django dictionary


【解决方案1】:

Python 字典没有名为 items 的字段,但它有一个名为 items 的函数。

以下是 PEP 3106 中的示例:http://www.python.org/dev/peps/pep-3106/

a = d.items()
for k, v in a: ...
# And later, again:
for k, v in a: ...

如果你想确认,你可以去 Python 的交互式终端,创建一个对象(例如 obj),然后输入 help(obj.prop),你应该会看到所有可用的字段和函数。

回到你的问题,你应该改用obj.prop.items()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-12-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多