嗨我想根据模型状态禁用某些模型实例的编辑(在Django管理员中).如果状态大于1,则将禁用编辑.我知道如何在左侧禁用该链接,但如果我设置了正确的URL,它仍然可以编辑,因此不欢迎此解决方案.
我的模特:
STATUS_CHOICES = (
(1, _(u'p')),
(2, _(u'w')),
(3, _(u'l')),
(4, _(u'p')),
)
class Ticket(models.Model):
author = models.ForeignKey(User, editable=False)
status = models.PositiveIntegerField(_('status'), choices=STATUS_CHOICES, default=1, editable=False)
Run Code Online (Sandbox Code Playgroud)
class MyModelAdmin(admin.ModelAdmin):
...
def has_change_permission(self, request, obj=None):
if obj is not None and obj.status > 1:
return False
return super(MyModelAdmin, self).has_change_permission(request, obj=obj)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4692 次 |
| 最近记录: |