Django: Даже если моя форма действительна, некоторые поля были пустыми при печати cleaned_data
Моя модель:
class sarl(models.Model):
denomination_social = models.CharField(max_length=200,blank=True)
numero_certificat = models.CharField(max_length=15,blank=True)
myfile = models.FileField(blank=True)
adresse = models.CharField(max_length=250,blank=True)
activite = models.CharField(max_length=100,blank=True)
objet = models.CharField(max_length=100,blank=True)
autreactiv = models.CharField(max_length=1000,blank=True)
ville = models.CharField(max_length=20,blank=True, null=True)
exercice_dip = models.BooleanField(default=False,blank=True)
capital_social=models.FloatField(max_length=15,blank=True)
gerant_representant = models.ForeignKey(PerP,on_delete=models.CASCADE,blank=True, null=True)
gerant_sep = models.ForeignKey(gerant_separe,blank=True, null=True,on_delete=models.CASCADE)
Typesarl = models.BooleanField(default=False,blank=True)
nbr_associe = models.CharField(max_length=6,default="--")
nbr_gerants = models.CharField(max_length=6,default="--")
Моя модель формы:
class sarlform(forms.ModelForm):
nbr_associe = forms.ChoiceField(choices=NBR_ASSOCIE, widget=forms.Select(attrs={'onchange':'NbrAssocie()'}),required = False)
autreactiv = forms.CharField(widget=forms.Textarea(attrs={'cols': 80, 'rows': 7}))
class Meta:
model = sarl
fields = (
'denomination_social', 'numero_certificat', 'adresse',
'activite', 'autreactiv', 'capital_social', 'nbr_associe',
)
когда я хочу опубликовать очищенные данные моей формы на моем views.py
, моя форма действительна, и я получаю все данные моих полей, но я не получаю adresse
поле.
def saveToBase(request):
form = sarlform(request.POST)
if form.is_valid():
print(request.POST.get('CuisineList'))
print("sarl form is valid !")
print(form.cleaned_data)
print(request.POST['adresse'])
form.save()
Вот что я получаю от печати очищенных данных:
{'denomination_social': 'fkrbvirbv', 'numero_certificat': 'bybyb',
'adresse': '', 'ville': None, 'activite': 'gggg', 'autreactiv': 'gregetg',
'capital_social': 140000.0, 'nbr_associe': '2'}
Я застрял здесь в течение нескольких часов, и действительно не понимаю, что является причиной этой проблемы. Любая помощь, пожалуйста, было бы здорово.
1 ответ
Я обнаружил, где моя проблема: в моем HTML я позвонил Adresse
а также ville
два раза, поэтому, когда я отправляю очищенные данные, он принимает только значение по умолчанию
Моя HTML-форма была:
<div id="domiciliation" style="display: none">
<p>Adresse : {{form.adresse}}</p>
<p>Ville : {{form.ville}}</p>
</div>
<div id="siege_social" style="display: none">
<p>Adresse : {{form.adresse}}</p>
<p>Ville : {{form.ville}}</p>
</div>
когда я создавал разные поля для второго div, он работал как показано ниже:
<div id="domiciliation" style="display: none">
<p>Adresse : {{form.adresse}}</p>
<p>Ville : {{form.ville}}</p>
</div>
<div id="siege_social" style="display: none">
<p>Adresse : {{form.aad}}</p>
<p>Ville : {{form.vi}}</p>
</div>
Я хотел бы поблагодарить всех за их повторы.