Я создал небольшое приложение некоторое время назад. Я создал admin.py и использовал admin.site.register(MenuEntry)
, чтобы добавить класс в консоль администратора. Он отлично показал предметы этого класса.
Затем я начал работать над другим приложением и создал все, как раньше. Но теперь он говорит:
У вас нет разрешения редактировать что-либо.
Я сравнивал файлы с этим и с этими приложениями, и они выглядят очень похожими, поэтому я просто не могу найти разницу, и я не могу понять, что делать теперь, чтобы заставить его работать.
Джанго. У вас нет прав редактировать что-либо
Ответ 1
Я проверил файлы еще раз и нашел разницу. Я забыл добавить admin.autodiscover()
в urls.py
проекта. Спасибо.
Ответ 2
У меня был другой случай, когда это произошло. У меня было приложение под названием "транскрипция" с двумя моделями: "Проект и запись". Получив его в основном, я решил переименовать приложение "записи". Приложение администратора отлично работало как администратор, но любой пользователь, не являющийся администратором, получил это сообщение об ошибке. В конце концов я нашел (в моем sqlite db) таблицу 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) правильные записи, оставив теперь неправильные записи нетронутыми. Пользователь admin работал просто отлично (интересно, почему), но любая другая группа получила ошибку. Когда я посмотрел на auth_group_permissions. Я видел, что были назначены только записи 8 и 9, и, конечно же, там больше не было приложением под названием "транскрипция". Отсюда ошибка.
Я удалил записи 10 и 11 и изменил app_labels 8 и 9 на "записи", и там радость в Mudville.
Ответ 3
Обновите свой Django до версии 1.7 или более. Эта проблема будет автоматически решена.
Обновление Django:
pip install -U django
Ответ 4
Я получал ту же ошибку и должен был реорганизовать имя app
, поскольку он противоречил одному из используемых модулей.
Мое имя app's
было admin
, и я также использовал Django admin
.
Отметьте ссылку - Изменить имя приложения, о том, как это сделать.
Ответ 5
Я просто просто удалил все установленные версии Django. Затем просто установите последнюю версию Django, и она работает