2009-07-30 8 views
1

Est-ce que quelqu'un sait comment obtenir l'élément sélectionné d'un menu déroulant à partir d'une méthode propre dans un objet de modèle, avant que l'objet a été enregistré? Je l'ai essayé ce qui suit:Comment obtenir la valeur d'un menu déroulant dans l'interface d'administration?

def clean_something(self): 
    dropdown = self.cleaned_data.get('dropdown') 

où « déroulant » est le champ qui représente le menu déroulant, mais cela ne semble pas fonctionner.

Des idées?

Cheers, Charles

+0

Qu'est-ce que 'self.cleaned_data ['dropdown']' vous donne? L'index sélectionné? –

+0

Merci Dominic, je pense que j'ai négligé un petit détail ici ... Il semble que clean_data fonctionne bien, j'ai juste oublié de le convertir en unicode! –

Répondre

0

Vous trouverez dans, self.data

def clean_something(self): 
    dropdown = self.data.get('dropdown') 
+0

Merci harshh, mais self.data.get me donne la clé primaire, et non la valeur affichée dans le menu déroulant. Bien sûr, je peux faire une recherche, mais je me demandais s'il y avait un moyen plus simple d'obtenir la valeur directement à partir du formulaire. –

0

Désolé les gars, j'ai testé plus à fond ... Ce qui suit me donne la valeur que je recherchais pour!

def clean_something(self): 
    dropdown = u'%s' % self.cleaned_data.get('dropdown') 
Questions connexes