使用django-admin界面订购商品

Kai*_*Kai 8 django django-models django-admin

让我们说我有一个看起来像这样的django模型:

class question(models.Model):
  order = models.IntegerField('Position')
  question = models.CharField(max_length= 400)
  answer = models.TextField()
  published = models.BooleanField()

  def __unicode__(self):
    return self.question
Run Code Online (Sandbox Code Playgroud)

在我看来,我会显示订单字段中按升序排序的所有问题.

我的问题是:是否有一种简单的方法来编辑django管理界面中的订单字段?现在我必须去编辑问题,而不是查看订单字段中的数字,甚至可能重新排序所有其他项目.我真正想要的是在管理页面上的一些"向上和向下" - 所有问题都列在其中.

那可能吗?

kir*_*gin 12

检查一下:django-orderedmodel.

对于可以使用管理界面订购的项目,这是一个非常简单的抽象基类实现.没有外部依赖,易于使用.


ale*_*asi 5

当然,这是一个admin.py文件的示例,其中包含用于更改项目顺序的向上和向下链接:https: //github.com/alexvasi/django-simplemenu/blob/master/simplemenu/admin.py

基本上,你只需要重写get_urls方法来添加自定义视图(move_upmove_down在这个例子中).

更有名的例子是django-treemenus,但是有一些额外的代码可以支持旧版本的django.