From e8e044f6e292c0ef4291018380b5db770cf9e824 Mon Sep 17 00:00:00 2001 From: Unai Zalakain Date: Mon, 10 Jul 2017 15:30:03 +0200 Subject: [PATCH] Add labels to localized subwidgets --- localized_fields/templates/localized_fields/multiwidget.html | 4 ++++ localized_fields/widgets.py | 5 +++++ 2 files changed, 9 insertions(+) create mode 100644 localized_fields/templates/localized_fields/multiwidget.html diff --git a/localized_fields/templates/localized_fields/multiwidget.html b/localized_fields/templates/localized_fields/multiwidget.html new file mode 100644 index 0000000..b9a5719 --- /dev/null +++ b/localized_fields/templates/localized_fields/multiwidget.html @@ -0,0 +1,4 @@ +{% for widget in widget.subwidgets %} + +{% include widget.template_name %} +{% endfor %} diff --git a/localized_fields/widgets.py b/localized_fields/widgets.py index 1005e02..3b75bc9 100644 --- a/localized_fields/widgets.py +++ b/localized_fields/widgets.py @@ -10,6 +10,7 @@ from .value import LocalizedValue class LocalizedFieldWidget(forms.MultiWidget): """Widget that has an input box for every language.""" + template_name = 'localized_fields/multiwidget.html' widget = forms.Textarea def __init__(self, *args, **kwargs): @@ -22,6 +23,10 @@ class LocalizedFieldWidget(forms.MultiWidget): super().__init__(initial_widgets, *args, **kwargs) + for ((lc, ln), w) in zip(settings.LANGUAGES, self.widgets): + w.attrs['lang_code'] = lc + w.attrs['lang_name'] = ln + def decompress(self, value: LocalizedValue) -> List[str]: """Decompresses the specified value so it can be spread over the internal widgets.