forms.py:
from django import forms
from .models import SignUp
from crispy_forms.helper import FormHelper
from crispy_forms.layout import Submit, Layout, Field
class ContactForm(forms.Form):
full_name = forms.CharField( required=False)
email = forms.EmailField()
message = forms.CharField()
class SignUpForm(forms.ModelForm):
class Meta:
model = SignUp
fields = ['full_name', 'email']
### exclude = ['full_name']
helper = FormHelper()
helper.layout = Layout(
Field('full_name', css_class='container'),
Field('email', css_class='input-sm'),
)
The HTML I get shows that it using different CSS classes instead of the ones that are in the layout. Have I missed something? Am I doing something wrong? How do I add custom CSS to my form?
HTML:
<div id="div_id_full_name" class="form-group"> <label for="id_full_name" class="control-label ">
Full name
</label> <div class="controls "> <input class="textinput textInput form-control" id="id_full_name" maxlength="120" name="full_name" type="text" /> </div> </div> <div id="div_id_email" class="form-group"> <label for="id_email" class="control-label requiredField">
Email<span class="asteriskField">*</span> </label> <div class="controls "> <input class="emailinput form-control" id="id_email" maxlength="254" name="email" type="email" required /> </div> </div>