2016-10-10 2 views
0

Ich kann nicht scheinen, die Standardbezeichnung mit django knusprigen Formen zu überschreiben.django knusprige Formen Etikettenüberschreibung funktioniert nicht

model.py

class User(AbstractUser): 
    house_name_number = models.CharField(max_length=255) 
    street_name = models.CharField(max_length=255) 
    town_city = models.CharField(max_length=255) 
    county = models.CharField(max_length=255) 
    postcode = models.CharField(max_length=8) 
    same_address = models.BooleanField() 
    move_in_date = models.DateField(null=True) 

forms.py

class AddressForm(forms.ModelForm): 
    def __init__(self, *args, **kwargs): 
     super().__init__(*args, **kwargs) 
     self.helper = FormHelper(self) 
     self.helper.label_class = 'sr-only' 
     self.helper.form_tag = False 
     self.helper.layout = Layout(
      PrependedText('postcode', '<i class="fa fa-home"></i>', placeholder="Postcode", autofocus=""), 
      PrependedText('house_name_number', '<i class="fa fa-home"></i>', placeholder="Building Number or Name", 
         ), 
      PrependedText('street_name', '<i class="fa fa-home"></i>', placeholder="Street Name", 
         ), 
      PrependedText('town_city', '<i class="fa fa-home"></i>', placeholder="Town or City", 
          label="test"), 
      PrependedText('county', '<i class="fa fa-home"></i>', placeholder="County"), 
      Field('same_address', '<i class="fa fa-home"></i>', 
        label="Have you lived at the property for 3 years"), 
      PrependedText('move_in_date', '<i class="fa fa-calendar"></i>', required=False, 
          placeholder="What date did you move in to your current address"), 
     ) 
+0

Keine Ahnung, warum die knusprige Form überschreiben funktioniert nicht. aber ich habe einen Workaround mit 'class Meta:' und der Label-Option https://docs.djangoproject.com/en/dev/topics/forms/modelforms/#overriding-the-default-fields gemacht – Yunti

Antwort

0

keine Ahnung, warum die Überschreibung knusprige Form nicht funktioniert. aber ich habe eine Abhilfe mit class Meta: und das Label Option docs.djangoproject.com/en/dev/topics/forms/modelforms/...

class AddressForm(forms.ModelForm): 
def __init__(self, *args, **kwargs): 
    super().__init__(*args, **kwargs) 
    self.helper = FormHelper(self) 
    self.helper.label_class = 'sr-only' 
    self.helper.form_tag = False 
    self.helper.layout = Layout(
     PrependedText('house_name_number', '<i class="fa fa-home"></i>', placeholder="Building Number or Name", 
        ), 
     PrependedText('street_name', '<i class="fa fa-home"></i>', placeholder="Street Name", 
        ), 
     PrependedText('town_city', '<i class="fa fa-home"></i>', placeholder="Town or City", 
         label="test"), 
     PrependedText('county', '<i class="fa fa-home"></i>', placeholder="County"), 
     PrependedText('postcode', '<i class="fa fa-home"></i>', placeholder="Postcode", autofocus=""), 
     Field('same_address',), 
     PrependedText('move_in_date', '<i class="fa fa-calendar"></i>', 
         placeholder="What date did you move in to your current address"), 
    ) 

class Meta: 
    model = User 
    fields = ['house_name_number', 
       'street_name', 
       'town_city', 
       'county', 
       'postcode', 
       'same_address', 
       'move_in_date', 
       ] 
    labels = { 
     'same_address': 'Have you lived at the property for 3 years?', 
    } 
Verwandte Themen