Browse Source

Retira namespaces das urls do crud

pull/258/head
Marcio Mazza 9 years ago
parent
commit
46055a6bfa
  1. 6
      comissoes/urls.py
  2. 28
      crud/base.py
  3. 10
      crud/tests/test_base.py
  4. 5
      materia/urls.py
  5. 6
      norma/urls.py
  6. 6
      sessao/urls.py

6
comissoes/urls.py

@ -7,9 +7,7 @@ from comissoes.views import (CadastrarComissaoView, CargoCrud, ComissaoCrud,
PeriodoComposicaoCrud, ReunioesView,
TipoComissaoCrud)
comissao_url_patterns, namespace = ComissaoCrud.get_urls()
comissao_url_patterns = comissao_url_patterns + [
comissao_url_patterns = ComissaoCrud.get_urls() + [
url(r'^(?P<pk>\d+)/composicao$',
ComposicaoView.as_view(), name='composicao'),
url(r'^(?P<pk>\d+)/materias-em-tramitacao$',
@ -29,7 +27,7 @@ comissao_url_patterns = comissao_url_patterns + [
]
urlpatterns = [
url(r'^comissoes/', include(comissao_url_patterns, namespace)),
url(r'^comissoes/', include(comissao_url_patterns)),
url(r'^sistema/comissoes/cargo/', include(CargoCrud.get_urls())),
url(r'^sistema/comissoes/periodo-composicao/',

28
crud/base.py

@ -55,12 +55,12 @@ def make_pagination(index, num_pages):
class BaseMixin(CrispyLayoutFormMixin):
@property
def namespace(self):
return self.model._meta.model_name
@classmethod
def url_name(cls, suffix):
return '%s_%s' % (cls.model._meta.model_name, suffix)
def resolve_url(self, url_name, args=None):
return reverse('%s:%s' % (self.namespace, url_name), args=args)
def resolve_url(self, suffix, args=None):
return reverse(self.url_name(suffix), args=args)
@property
def list_url(self):
@ -195,17 +195,13 @@ class Crud:
CrudUpdateView = _add_base(cls.UpdateView)
CrudDeleteView = _add_base(cls.DeleteView)
urlpatterns = [
url(r'^$', CrudListView.as_view(), name='list'),
url(r'^create$', CrudCreateView.as_view(), name='create'),
url(r'^(?P<pk>\d+)$', CrudDetailView.as_view(), name='detail'),
url(r'^(?P<pk>\d+)/edit$',
CrudUpdateView.as_view(), name='update'),
url(r'^(?P<pk>\d+)/delete$',
CrudDeleteView.as_view(), name='delete'),
]
return urlpatterns, _add_base(object)().namespace
return [url(regex, view.as_view(), name=view.url_name(suffix))
for regex, view, suffix in [
(r'^$', CrudListView, 'list'),
(r'^create$', CrudCreateView, 'create'),
(r'^(?P<pk>\d+)$', CrudDetailView, 'detail'),
(r'^(?P<pk>\d+)/edit$', CrudUpdateView, 'update'),
(r'^(?P<pk>\d+)/delete$', CrudDeleteView, 'delete'), ]]
@classonlymethod
def build(cls, _model, _help_path):

10
crud/tests/test_base.py

@ -140,11 +140,11 @@ def test_layout_detail_fieldsets(monkeypatch):
def test_reverse():
assert '/countries/' == reverse('country:list')
assert '/countries/create' == reverse('country:create')
assert '/countries/2' == reverse('country:detail', args=(2,))
assert '/countries/2/edit' == reverse('country:update', args=(2,))
assert '/countries/2/delete' == reverse('country:delete', args=(2,))
assert '/countries/' == reverse('country_list')
assert '/countries/create' == reverse('country_create')
assert '/countries/2' == reverse('country_detail', args=(2,))
assert '/countries/2/edit' == reverse('country_update', args=(2,))
assert '/countries/2/delete' == reverse('country_delete', args=(2,))
def assert_h1(res, title):

5
materia/urls.py

@ -22,11 +22,8 @@ from materia.views import (AcompanhamentoConfirmarView,
TramitacaoEditView, TramitacaoView,
UnidadeTramitacaoCrud, ProposicaoEditView)
materia_legislativa_patterns, namespace = MateriaLegislativaCrud.get_urls()
urlpatterns = [
url(r'^materia/', include(materia_legislativa_patterns, namespace)),
url(r'^materia/', include(MateriaLegislativaCrud.get_urls())),
url(r'^materia/(?P<pk>[0-9]+)/ta$',

6
norma/urls.py

@ -14,15 +14,13 @@ from norma.views import (AssuntoNormaCrud, NormaEditView, NormaIncluirView,
# o código abaixo:
# url(r'^norma/(?P<pk>[0-9]+)/ta$', NormaTaView.as_view(), name='ta')
# bem como a classe NormaTaView que está em norma.views
norma_url_patterns, namespace = NormaTemporarioCrud.get_urls()
norma_url_patterns += [
norma_url_patterns = NormaTemporarioCrud.get_urls() + [
url(r'^norma/(?P<pk>[0-9]+)/ta$',
NormaTaView.as_view(), name='ta')
]
urlpatterns = [
url(r'^norma/', include(norma_url_patterns, namespace)),
url(r'^norma/', include(norma_url_patterns)),
url(r'^sistema/norma/tipo/', include(TipoNormaCrud.get_urls())),
url(r'^sistema/norma/assunto/', include(AssuntoNormaCrud.get_urls())),

6
sessao/urls.py

@ -21,9 +21,7 @@ from sessao.views import (EditExpedienteOrdemDiaView, EditMateriaOrdemDiaView,
VotacaoNominalExpedienteView, VotacaoNominalView,
VotacaoView)
urlpatterns_sessao, namespace = SessaoCrud.get_urls()
urlpatterns_sessao = urlpatterns_sessao + [
urlpatterns_sessao = SessaoCrud.get_urls() + [
url(r'^(?P<pk>\d+)/expediente$',
ExpedienteView.as_view(), name='expediente'),
url(r'^(?P<pk>\d+)/presenca$',
@ -105,7 +103,7 @@ sessao_rest = [
]
urlpatterns = [
url(r'^sessao/', include(urlpatterns_sessao, namespace)),
url(r'^sessao/', include(urlpatterns_sessao)),
url(r'^media/(?P<path>.*)$', serve,
{'document_root': settings.MEDIA_ROOT}),
url(r'^rest/', include(sessao_rest)),

Loading…
Cancel
Save