【问题标题】:django , list of models to list of stringdjango,模型列表到字符串列表
【发布时间】:2011-05-04 17:53:23
【问题描述】:

我有一个模型对象列表:

只是一个例子(我并没有真正列出所有()):

class Tag(models.Model):
    name = models.CharField(max_length=50,primary_key=True)
    #Some other fields....

    def __str__(self):
        return self.name

mylist = list(Tag.objects.all())

将其转换为字符串列表的最佳方法是什么?
我必须迭代列表吗?

我正在做类似的事情:

newList = [ t.str() for t in mylist ]

还有更好的方法吗?

【问题讨论】:

  • 我认为如果你真的需要一个字符串列表,你的代码就可以了。问题是,你真的需要转换成字符串吗?请记住,模板使用您的 __str____unicode__ 方法,因此您无需向它们传递字符串。你也可以[x.name for x in mylist],可能会快一点。
  • 它不是用于模板...我正在获取包含复杂查询的项目列表。然后我需要将其中一个字段作为字符串并将该列表传递给另一个查询

标签: python django list django-models


【解决方案1】:

这个

newList = [ str(t) for t in mylist ]

newList = map( str, myList )

但一般来说,我们不会打扰。我们只是把它留给模板在渲染模板时将查询集转换为字符串。

【讨论】:

猜你喜欢
  • 2016-01-29
  • 2021-03-17
  • 1970-01-01
  • 2013-04-08
  • 2012-08-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多