2017-09-20 5 views
0

Je le code suivant dans mon projet Django:Django Forms - est-il conseillé de changer d'utilisateur a soumis des données dans la méthode propre

def my_view(request): 
    form = MyForm(request.POST): 
    if form.is_valid(): 
     instance = form.save(commit = False) 
     instance.some_field = 'foo' 
     form.save() 
    #... 

La question est, est-il préférable de réécrire ce de la manière suivante:

forms.py

class MyForm(forms.ModelForm): 
    def __init__(self, *args, **kwargs): 
     # ... 

    def clean(self): 
     form.some_field = 'foo' 

Je me demande, si la méthode clean doit être utilisé exclusivement pour la validation des données, ou je pourrais également effectuer ici des trucs de logique métier, ainsi rendre mes opinions plus concises et dépourvues de détails sur la logique métier.

L'un des avantages possibles de l'affectation dans la méthode clean est que la validation des données peut parfois dépendre de some_field.

Répondre

0

Avez-vous envisagé de le mettre dans .save?