Browse Source

Fix InlineRadio bug

upgrade-sapl
Edward Ribeiro 2 months ago
parent
commit
05639ba102
  1. 3
      sapl/crispy_layout_mixin.py
  2. 2
      sapl/protocoloadm/forms.py
  3. 4
      sapl/settings.py

3
sapl/crispy_layout_mixin.py

@ -56,6 +56,7 @@ def form_actions(more=[Div(css_class='clearfix')],
class SaplFormHelper(FormHelper):
render_hidden_fields = True # default = False
template_pack = "bootstrap4"
"""
até a release 1.6.1 do django-crispy-forms, os fields em Meta.Fields eram
renderizados mesmo se não mencionados no helper.
@ -214,7 +215,6 @@ class CrispyLayoutFormMixin:
for fieldname, span in row]
def get_form(self, form_class=None):
# Only handle the “no get_form in MRO” case; let real errors bubble up.
super_get_form = getattr(super(CrispyLayoutFormMixin, self), 'get_form', None)
if super_get_form is None:
# Either raise, or (if you want to support non-form views) construct a form when form_class exists.
@ -232,7 +232,6 @@ class CrispyLayoutFormMixin:
form.helper = SaplFormHelper()
layout = self.get_layout()
form.helper.layout = SaplFormLayout(*layout)
return form
@property

2
sapl/protocoloadm/forms.py

@ -337,6 +337,7 @@ class ProtocoloDocumentoForm(ModelForm):
tipo_protocolo = forms.ChoiceField(required=True,
label=_('Tipo de Protocolo'),
choices=TIPOS_PROTOCOLO_CREATE,
widget=forms.RadioSelect(), # sem isso o Crispy Form buga com InlineRadios!
initial=0,)
tipo_documento = forms.ModelChoiceField(
@ -422,6 +423,7 @@ class ProtocoloDocumentoForm(ModelForm):
fieldset = row3
self.helper = SaplFormHelper()
self.helper.template_pack = "bootstrap4"
self.helper.layout = Layout(
Fieldset(_('Identificação de Documento'),
row1,

4
sapl/settings.py

@ -378,8 +378,8 @@ FILE_UPLOAD_PERMISSIONS = 0o644
DAB_FIELD_RENDERER = \
'django_admin_bootstrapped.renderers.BootstrapFieldRenderer'
CRISPY_TEMPLATE_PACK = 'bootstrap4'
CRISPY_ALLOWED_TEMPLATE_PACKS = ("bootstrap", "bootstrap4")
CRISPY_FAIL_SILENTLY = not DEBUG
CRISPY_ALLOWED_TEMPLATE_PACKS = "bootstrap4"
CRISPY_FAIL_SILENTLY = False
# suprime texto de ajuda default do django-filter
FILTERS_HELP_TEXT_FILTER = False

Loading…
Cancel
Save