Browse Source

Refatora create/update

pull/341/head
Eduardo Edson Batista Cordeiro Alves 9 years ago
committed by Edward Ribeiro
parent
commit
715f89f313
  1. 12
      parlamentares/forms.py
  2. 12
      parlamentares/views.py

12
parlamentares/forms.py

@ -1,6 +1,7 @@
from crispy_forms.helper import FormHelper
from crispy_forms.layout import HTML, Fieldset, Layout, Submit
from django import forms
from django.core.exceptions import ValidationError
from django.db import transaction
from django.forms import ModelForm
from django.utils.translation import ugettext_lazy as _
@ -59,8 +60,8 @@ def validate(data, data_desfiliacao, parlamentar, filiacao):
# Dá erro caso a data de desfiliação seja anterior a de filiação
if data_desfiliacao and data_desfiliacao < data_filiacao:
error_msg = _("A data de filiação não pode anterior \
à data de desfiliação")
error_msg = _("A data de desfiliação não pode anterior \
à data de filiação")
raise forms.ValidationError(error_msg)
return False
@ -125,11 +126,10 @@ class FiliacaoForm(ModelForm):
@transaction.atomic
def save(self, commit=False):
filiacao = super(FiliacaoForm, self).save(commit)
if not validate(self.cleaned_data['data'],
self.cleaned_data['data_desfiliacao'],
filiacao.parlamentar,
filiacao):
self.cleaned_data['data_desfiliacao'],
filiacao.parlamentar,
filiacao):
return self.form_invalid(form)
filiacao.save()

12
parlamentares/views.py

@ -37,20 +37,12 @@ class FiliacaoCrud(MasterDetailCrud):
parent_field = 'parlamentar'
help_path = ''
class CreateView(crud.masterdetail.CrudCreateView):
class CreateView(MasterDetailCrud.CreateView):
form_class = FiliacaoForm
@classmethod
def get_url_regex(self):
return r'^(?P<pk>\d+)/%s/create$' % self.model._meta.model_name
class UpdateView(crud.masterdetail.CrudUpdateView):
class UpdateView(MasterDetailCrud.UpdateView):
form_class = FiliacaoForm
@classmethod
def get_url_regex(self):
return r'^%s/(?P<pk>\d+)/edit$' % self.model._meta.model_name
class ParlamentarCrud(Crud):
model = Parlamentar

Loading…
Cancel
Save