Bonjour,

j'ai un formulaire lié à un modèle
j'ai ajouté un champ non-lié ('pays' calculé à partir de l'un des champs liés) pour simple affichage

je ne parviens pas à agir sur l'ordre de ce champ non lié qui est systématiquement mis à la fin
j'ai essayé field_order mais çà ne fonctionne que sur les champs liés du formulaire...

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
 
class ParametrageForm(forms.ModelForm):
 
 
    def __init__(self, request, *args, **kwargs):
        super(ParametrageForm, self).__init__(*args, **kwargs)
        self.request = request
        self.language = request.session.get('language')
        self.user = request.user.id # id de l'utilisateur
        self.user_pays = request.session.get('user_pays') 
        self.user_site_type = request.session.get('user_site_type') 
        self.user_site = request.session.get('user_site') 
        instance = Parametrage.objects.get(asp_par_cle = kwargs['instance'].asp_par_cle) # instance du formulaire 
        SITE_CONCERNE = Site.option_list_sites(self.language)
 
        if self.language == 'en':
            pays = Site.objects.get(sit_abr = instance.asp_par_loc).reg.pay.pay_nom_eng
        elif self.language == 'fr':
            pays = Site.objects.get(sit_abr = instance.asp_par_loc).reg.pay.pay_nom_fra
        else:
            pays = Site.objects.get(sit_abr = instance.asp_par_loc).reg.pay.pay_nom_eng
 
        self.fields["pays"] = forms.CharField(label = _("Country"),widget=forms.TextInput,initial=pays, disabled=True)
        self.fields['pays'].widget.attrs.update({
            'autocomplete': 'off'
        })
        self.fields["asp_par_loc"] = forms.ChoiceField(label = _("Site concerned by settings"), widget=forms.Select, choices=SITE_CONCERNE, disabled=True)
        self.fields["asp_par_ale"] = forms.IntegerField(label = _("Stock alert value for this site"), widget=forms.TextInput,)
        self.fields['asp_par_ale'].widget.attrs.update({
            'autocomplete': 'off'
        })
        self.fields["asp_par_con"] = forms.IntegerField(label = _("Stock confort value for this site"), widget=forms.TextInput,)
        self.fields['asp_par_con'].widget.attrs.update({
            'autocomplete': 'off'
        })    
        field_order = ['pays','asp_par_loc','asp_par_ale','asp_par_con',]
 
 
    class Meta:
        model = Parametrage
        fields = ('asp_par_loc','asp_par_ale','asp_par_con',)
d'avance merci pour votre aide