【发布时间】:2020-01-01 08:33:54
【问题描述】:
我更改了模型的名称。它被称为“Riesgo asociado”,我将其更改为“Reglas”,然后更改为“Regla”并应用迁移,一切正常。但是现在我对每个名称都有更改、删除、查看和添加权限,即使它们是同一个模型。
我需要更改此设置,因为所有这些权限都显示在自定义管理视图中,而旧名称的这些权限是无用的。
为了更清楚,see the following image that shows the permissions on the admin page 是相同的 app_name,相同的型号,不同的权限名称。
这个之前被命名为“Riesgo asociado”和“Reglas”的模型“Regla”:
class Regla(AuditMixin, models.Model):
rule_id = models.IntegerField(
verbose_name='Rule ID'
)
descripcion = models.TextField(
verbose_name='Descripcion'
)
servicio = models.ForeignKey(
'Servicio',
on_delete=models.PROTECT,
verbose_name='Servicio'
)
exclusivo = models.BooleanField(
verbose_name='Exclusivo'
)
def __str__(self):
return str(self.rule_id)
def get_descripcion(self):
return str(self.descripcion)
def get_servicio(self):
return str(self.servicio)
【问题讨论】:
-
你能分享你的模型吗?
-
@NalinDobhal 我用模型类更新了问题
-
从未尝试过,但您不能删除过时的 Permissions 对象吗? docs.djangoproject.com/en/2.2/ref/contrib/auth/…(注意我没有检查关系所以确保它不会导致删除级联)。
-
@nigel222 那么,获取权限对象并对其应用 permission.delete() 吗?我什至没有考虑它,也许它有效......
标签: django django-models permissions