19

アプリやモデルの開発中に、アクセス許可が削除されたり、名前が変更されたりすることがあります。何かを壊さずに権限テーブルから残り物をきれいにする良い方法は何ですか?

例:いくつかの権限articlesを持つモデルを持つアプリがあります。Article

class Article(models.Model):
    title = ...
    text = ...

    class Meta:
        permissions = (
            ('can_edit_title', 'Can edit title of article'),
            ('can_edit_text', 'Can edit text of article'),
        )

コマンドでこの権限を追加します(インストール済みdjango_extension):

./manage update_permissions

しかし、後で、名前を付けた方が良いことに気づきましたcan_update_title。だから私はモデルを変更します:

class Article(models.Model):
    ...

    class Meta:
        permissions = (
            ('can_update_title', 'Can update title of article'),
            ('can_update_text', 'Can update text of article'),
        )

パーミッションを更新すると、Django 管理に両方のパーミッションが存在し、ユーザー (管理者) にとって非常に混乱します。

4

2 に答える 2