I have one page, which I have to show three model form and three
different submit button for each.
My question is how I can save these three form individually?
FOLLOWING IS CODE:-
**form.py**
class UserTaxesMultiForm(MultiModelForm):
form_classes = {
'user_tax_form': MyForm,
'user_discount_form': DiscountForm,
'user_shiping_form': ShipmentForm,
}
*Note- myForm, DiscountForm, ShipmentForm are model forms. like following-*
class MyForm(forms.ModelForm):
prefix = 'tax'
class Meta:
model = StUserTaxDetails
fields = ('tax_name', 'tax_rate')
tax_name = forms.CharField(max_length=10,
widget=forms.TextInput(),
required=True, label="tax name")
tax_rate = forms.FloatField(required=True, label="tax rate")
error_messages = {
'required': _('fields are required.'),
}
def clean_title(self):
return self.cleaned_data['tax_name']
def clean(self):
tax_name = self.cleaned_data.get('tax_name')
tax_rate = self.cleaned_data.get('tax_rate')
if not tax_name and not tax_rate:
raise forms.ValidationError(
self.error_messages['required'],
code='required',
)
return self.cleaned_data
**view.py**
class AddTaxView(LoginRequiredMixin, CreateView):
template_name = 'invoices/add_tax.html'
form_class = UserTaxesMultiForm
success_url = '/add/tax/'
*{WHAT IS THE CODE HERE FOR THE POST METHOD TO SAVE DATA ACORDING
DIFFRENT FORM SUBMIT} *
**HTML**
<form method="POST">
{% form.user_tax_form%}
<input type="submit" value="Submit" />
</form>
<form method="POST">
{% form.user_discount_form%}
<input type="submit" value="Submit" />
</form>
<form method="POST">
{% form.user_shiping_form%}
<input type="submit" value="Submit" />
</form>
PLEASE HELP
--
You received this message because you are subscribed to the Google Groups
"Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/django-users.
To view this discussion on the web visit
https://groups.google.com/d/msgid/django-users/45a017a3-9633-426f-81e1-b261189e714a%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.