问题描述
我正在为诸如国家和州之类的东西,以及诸如运输选项之类的其他功能创建Wa尾片段。令我惊讶的是,无法在“选择器”面板中显示摘要片段。
“摘要缺少页面的许多功能,例如在Wagtail管理员中可订购” https://docs.wagtail.io/en/stable/topics/snippets.html?highlight=order
这意味着,如果我插入(说)一个新的国家/地区,就不可能将其显示在字母列表中,这将使用户很难在面板中找到它。
我真的更希望能够在Admin UI中进行订购,因此我可以将“在地铁上”,“步行到地铁上的短途旅行”,“从地铁到长途旅行”等选项组合在一起,而不是按字母顺序排序。如果我无法使用代码段执行此操作,是否有办法对Orderable进行类似操作,并允许其像代码段一样在Admin UI中进行维护?
谢谢。
解决方法
Django允许您在模型的Meta
类上设置ordering
属性,以定义该模型上的查询所使用的默认顺序-Wagtail管理员中的列表将使用此属性。
@register_snippet
class Country(models.Model):
name = models.CharField(max_length=255)
class Meta:
ordering = ['name']
对于用户定义的排序,您可以定义一个数字字段(例如,名为position
)并将ordering
属性设置为该字段。