Formset created with inlineformset_factory doesn't render labels on page

16 views
Skip to first unread message

kradem

unread,
Mar 23, 2018, 9:03:14 AM3/23/18
to Django users

I've got a formset:

I've got a formset:

FormSet = inlineformset_factory(
   
User, Profile,
    fields
=('mychoice',),
    widgets
={
       
'mychoice': Select(choices=CHOICES)
   
},
    labels
={
       
'mychoice': _('mychoices:')
   
}
)

Instantiated in class based DetailView:

class ProfileDisplay(DetailView):
    template_name
= 'profile.html'
    model
= User

   
def get(self, request, *args, **kwargs):
        form
= self.get_form()
        profile_form
= ProfileFormSet(instance=self.request.user)
       
return self.render_to_response(
           
self.get_context_data(form=form, profile_form=profile_form)
       
)

and shown in a template like:

<form method="POST" action=".">
   
<fieldset class="profile">
        {{ profile_form.management_form }}
        {% for form in profile_form %}
            {% for field in form %}
                {{ field }}
                {{ field.label_tag }}
            {% endfor %}
        {% endfor %}
   
</fieldset>
</form>    

The problem is that label is not shown on the page, I'm getting only:

<select name="profile-0-mychoice" id="id_profile-0-mychoice">
<option value="True" selected>mychoice true</option>
<option value="False">mychoice false</option>
</select>



Reply all
Reply to author
Forward
0 new messages