2010-11-18 11 views
2

Comment désactiver l'icône verte sur des champs 'manytomany' ou 'foreignkey' spécifiques dans des formulaires générés automatiquement.Désactivation des icônes 'plus vertes' spécifiques uniquement sur les formulaires générés automatiquement

comme suit en utilisant le CSS:

.add-another { 
    display: none; 
} 

désactive tous que je ne veux pas.

Un exemple serait le modèle des jours de la semaine (jours de stockage du lundi au dimanche). Une clé étrangère pointant vers ce modèle montre l'icône verte plus qui permettrait aux utilisateurs d'éditer/corrompre les données dans le modèle.

Y at-il un moyen de désactiver cela dans les formulaires générés par défaut (pour gagner du temps en écrivant des formulaires personnalisés juste pour y parvenir)?

En outre, on peut affirmer que la plupart du contenu de ce modèle est statique, plutôt que de créer une clé étrangère pour pointer vers ce modèle, la ferraille ce modèle et faire quelque chose comme ceci:

WEEK_DAYS = [ 
    (MONDAY, 'monday')), 
    (TUESDAY, 'tuesday')), 
    #. . . so on 
] 

class AModel(models.Model): 
    weekday_dropdown = models.CharField(max_length=10, choices=WEEK_DAYS, default=ENABLED) 

Le problème serait maintenant, et si le super-utilisateur/superadmin qui sera un non-programmeur veut supprimer samedi et dimanche par l'administrateur sans entrer dans le code?

Répondre

2

trouvé la réponse :)

Chaque personne se connecte au système d'administration dispose d'un ensemble d'autorisations et les groupes gérés par la zone de gestion de l'utilisateur django.

Une personne ne verrait pas l'icône «plus vert» à côté d'une liste déroulante (champ clé étrangère/champ manytomany) si elle n'a pas la permission (sous django) de l'éditer.