11
votes

Champs à réadonner dans l'administrateur Django / Inline

J'utilise Cet extrait pour afficher plusieurs champs dans mon backend d'administration comme réadonn, mais comme Remarqué dans les commentaires, cela ne fonctionne pas sur la pileDinline / TabularIlline. Y a-t-il une autre façon d'y parvenir? J'ai une liste d'objets attachés à un modèle et je veux juste le montrer dans la vue des détails du modèle sans possibilité de modifier des valeurs.


0 commentaires

3 Réponses :



2
votes

J'ai rencontré le même problème aujourd'hui. Voici ma solution. Ceci est l'exemple de champ en lecture seule pour la valeur ForeTondey: xxx


0 commentaires

0
votes

Comme c'est le cas avec JQuery, il semble que vous puissiez y parvenir en changeant une attrvente appelée "désactivée" (fonctionne dans mon safari, ok nous sommes maintenant en 2013 :-)). Exemple ci-dessous:

def get_form(self, request, obj=None, **kwargs):
        result = super(<your ModelAdmin class here>, self).get_form(request, obj=obj, **kwargs)
        result.base_fields[<the select field you want to disable>].widget.attrs['disabled'] = 'disabled'
        return result


0 commentaires