{% bootstrap_field form.statut form_group_class='col-md-6' show_label=False %}
Le champ form.statut est une case à cocher
Résultat HTML :
<div class="col-md-6">
<div class="case à cocher">
<label for="id_statut">
<input name="statut" class="" required="" id="id_statut" type="checkbox"> J'adhère aux
<a href="url_statuts.pdf" target="_blank">statuts</a>
</label>
</div>
</div>
show_label n'a aucun effet. La source du problème est peut-être :
FieldRenderer.put_inside_label() dans post_widget_render() avec CheckBoxInput (renderers.py)
Merci, ça ressemble à un bug. Vous avez déjà fait des recherches. Une Pull Request avec un cas de test serait la bienvenue.
Le bug est réel.
Le correctif arrive-t-il bientôt ?
@donvito-pl @kutera avez-
J'essaierai d'enquêter, mais les chances de réussir ne sont pas si élevées :)
"addon_before, label_class et field_class" ne fonctionnent pas non plus avec la case à cocher.
Le champ de case à cocher ne peut donc pas être utilisé comme champ personnalisé.
@dyve
Il peut être résolu en ajoutant "label_class=self.get_label_class()" à la fonction ci-dessous
def put_inside_label(self, html):
content = '{field} {label}'.format(
field=html,
label=self.label,
)
return render_label(
content=mark_safe(content),
label_for=self.field.id_for_label,
label_title=escape(strip_tags(self.field_help)),
label_class=self.get_label_class()
)
Cette fonction se trouve dans "bootstrap3 / renderers.py"
@nikolaysm
Cela cache la case à cocher.
Peut-être quelque chose comme ça :
def put_inside_label(self, html):
content = '{field} {label}'.format(
field=html,
>>>> label=self.label if self.show_label else ''
)
return render_label(
content=mark_safe(content),
label_for=self.field.id_for_label,
label_title=escape(strip_tags(self.field_help))
)
Ce problème a été automatiquement marqué comme obsolète car il n'a pas eu d'activité récente. Il sera fermé si aucune autre activité ne se produit. Merci pour vos contributions.
Commentaire le plus utile
@dyve
Il peut être résolu en ajoutant "label_class=self.get_label_class()" à la fonction ci-dessous
Cette fonction se trouve dans "bootstrap3 / renderers.py"