python - 如何在 View 中排序一组对象

标签 python django django-templates

我的代码目前列出了服务器中的所有,使用:

{% for domain in server.domain_set.all %}

我想按 url 对 View 中的域进行排序。像这样的东西:

{% for domain in server.domain_set.all().order_by('url') %}

但我得到一个异常“无法解析余数”。如何订购 list ?

最佳答案

“无法解析余数”错误是因为您在 Django 模板中包含了 Python 代码。 Django 不允许这样做。

您可以在模型上添加一个方法:

def sorted_domains(self):
    return self.domain_set.all().order_by('url')

然后这样调用它:

{% for domain in server.sorted_domains %}

另一种方法是使用 Meta attributeDomain 模型上设置默认排序顺序.

关于python - 如何在 View 中排序一组对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18983785/

相关文章:

jquery - 表单提交前预览图像

django - 如何在 Django 中将列表项插入数据库?

python - open() 如何在有和没有 `with` 的情况下工作?

python - 没有独特的模式;找到 2 个同样常见的值

python - 无法编辑 django 表

html - 找不到页面的 Django 静态 CSS(开发)

django 包含标签

python - 从字符串中删除前x个字符?

python - 学习Python的交互式教程

python - 用户的数据操作