J'ai créé une petite application il ya un moment. J'ai créé admin.py et utilisé admin.site.register(MenuEntry)
à ajouter à la classe de la console d'administration. Il a montré les éléments de cette classe très bien.
Puis j'ai commencé à travailler sur une autre application et créé tout comme avant. Mais maintenant, il dit:
Vous n'avez pas la permission de modifier quoi que ce soit.
J'ai comparé les fichiers de qui et de ce apps et ils ont l'air assez similaires, donc je ne peux pas trouver la différence et je ne peux pas réaliser ce faire, maintenant, pour le faire fonctionner.
Réponses
Trop de publicités?J'ai eu un autre cas où ce qui s'est passé. J'ai eu une application appelée "la transcription", avec deux modèles: le Projet et l'Enregistrement. Après avoir développé, j'ai décidé de renommer l'application des "enregistrements". L'administrateur d'application a bien fonctionné tant que l'admin, mais tout utilisateur non-administrateur eu ce message d'erreur. Finalement, j'ai trouvé (dans ma db sqlite) le tableau django_content_type. Il avait de ces dossiers:
nom de l'id de app_label modèle ------------------------------------- 8 projet de projet de transcription 9 enregistrement de la transcription de l'enregistrement Projet 10 projet d'enregistrement 11 enregistrement des enregistrements enregistrement
Quelque part le long de la façon dont j'avais réussi à ajouter deux (presque - ne sais pas pourquoi "enregistrement" dans l'enregistrement 10) corriger des dossiers, tout en laissant le maintenant enregistrements incorrects intacte. L'utilisateur admin a très bien fonctionné (je me demande pourquoi), mais tout autre groupe a reçu l'erreur. Quand J' regardé auth_group_permissions j'ai vu que seuls les documents 8 et 9 ont été cédés et bien sûr, il y n'était plus une application appelée "la transcription". D'où l'erreur.
J'ai supprimé les dossiers 10 et 11 et changé le app_labels de 8 et 9 pour les "enregistrements" et il y a de la joie dans Mudville.