【问题标题】:django: adding custom permissions stopped workingdjango:添加自定义权限停止工作
【发布时间】:2019-11-23 12:43:32
【问题描述】:

我有一个包含多个应用程序的 django 项目。在其中一个应用程序中,当我向任何模型添加自定义权限并运行 makemigration 时,会创建用于添加权限的迁移文件。当我应用迁移时,我没有收到任何错误消息,但权限未添加到 auth_permission 表中。

class Meta:
    app_label = 'my_app'

    permissions = (
        ('assign_work_type', 'Assign work type'),
    )

迁移完成且没有错误

我已经尝试在其他应用程序中执行相同的操作,并且效果很好。我还尝试向当前应用程序添加一列,并且效果也很好。有人知道它可能是什么吗?我正在运行 django 1.11.26

更新

这是迁移文件的内容

# -*- coding: utf-8 -*-
# Generated by Django 1.11.26 on 2019-11-25 11:13
from __future__ import unicode_literals

from django.db import migrations


class Migration(migrations.Migration):

    dependencies = [
        ('timereport', '0143_auto_20191122_1754'),
    ]

    operations = [
        migrations.AlterModelOptions(
            name='worktype',
            options={'permissions': (('assign_work_type', 'Assign work type'),)},
        ),
    ]

【问题讨论】:

  • 请将错误添加到您的问题中。
  • 没有错误信息。它以“OK”结束
  • 能否显示迁移文件中的内容?
  • 将迁移文件添加到帖子中
  • 这是我注意到这种问题的唯一方法是当你没有在 INSTALLED_APPS 中注册你的应用程序时my_app,检查这个查询的输出SELECT * FROM 'auth_permission' where codename='assign_work_type' 并检查这不是空白的

标签: django migration


【解决方案1】:

经过一番调查后,我发现受影响的应用缺少 models_module,即“models.py”文件。我将所有模型都放在 /model/ 目录中,不久前我删除了 models.py 文件,认为它没有用。

重新添加 models.py 文件解决了这个问题

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-12-17
    • 2013-02-27
    • 2013-09-09
    • 1970-01-01
    • 1970-01-01
    • 2013-09-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多