Джанго. У вас нет разрешения на редактирование чего-либо - PullRequest
63 голосов
/ 15 сентября 2010

Я недавно создал небольшое приложение. Я создал admin.py и использовал admin.site.register(MenuEntry) для добавления класса в консоль администратора. Он показал предметы этого класса просто отлично. Затем я начал работать над другим приложением и создал все как раньше. Но теперь он говорит: У вас нет прав на редактирование. Я сравнил файлы из этого и из этих приложений, и они выглядят очень похоже, поэтому я просто не могу найти разницу, и я не могу понять, что делать сейчас, чтобы это работало.

Ответы [ 5 ]

136 голосов
/ 15 сентября 2010

Я проверил файлы еще раз и обнаружил разницу. Я забыл добавить admin.autodiscover() в urls.py проекта. Спасибо.

2 голосов
/ 26 мая 2013

У меня был еще один случай, когда это произошло.У меня было приложение под названием «транскрипция» с двумя моделями: Project и Recording.После того, как он был разработан, я решил переименовать приложение в «записи».Приложение администратора работало как администратор, но любой пользователь без прав администратора получил это сообщение об ошибке.В конце концов я нашел (в моей базе данных sqlite) таблицу django_content_type.У него были эти записи:

id  name      app_label     model
-------------------------------------
8   project   transcription project
9   recording transcription recording
10  project   recording     project
11  recording recordings    recording

Где-то по пути мне удалось добавить две (почти - не знаю, почему «запись» в записи 10) правильные записи, оставив теперь неточные записи нетронутыми.Пользователь с правами администратора работал нормально (интересно почему), но любая другая группа получила ошибку.Когда я посмотрел на auth_group_permissions, то увидел, что назначаются только записи 8 и 9, и, конечно же, больше не было приложения с названием «транскрипция».Отсюда ошибка.

Я удалил записи 10 и 11 и изменил app_labels из 8 и 9 на «записи», и в Mudville есть радость.

1 голос
/ 27 февраля 2015

Обновите Django до 1,7 или более. Эта проблема будет автоматически решена.

Обновление Джанго:

pip install -U django
0 голосов
/ 19 августа 2015

Я получил ту же ошибку, и мне пришлось провести рефакторинг имени app, так как оно конфликтовало с одним из используемых модулей. Мое app's имя было admin, и я также использовал Django admin.

Проверьте ссылку - Измените название приложения , как это сделать.

0 голосов
/ 09 марта 2015

Я просто удалил все установленные на данный момент версии Django. Затем заново установите последнюю версию Django, и она работает

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...