Browse Source

Add method to get source lines in unicode

pull/6/head
Marcio Mazza 10 years ago
parent
commit
c2c5641dd2
  1. 12
      legacy/scripts/scrap_original_forms.py
  2. 8
      legacy/scripts/utils.py
  3. 182
      parlamentares/models.py

12
legacy/scripts/scrap_original_forms.py

@ -1,13 +1,12 @@
import os import os
import re import re
import string import string
from inspect import getsourcelines
from bs4 import BeautifulSoup from bs4 import BeautifulSoup
from bs4.element import NavigableString, Tag from bs4.element import NavigableString, Tag
from field_mappings import field_mappings from field_mappings import field_mappings
from utils import listify from utils import listify, getsourcelines
def _read_line(tr): def _read_line(tr):
@ -87,7 +86,7 @@ def extract_verbose_names(model):
@listify @listify
def source_with_verbose_names(model): def source_with_verbose_names(model):
source = getsourcelines(model)[0] source = getsourcelines(model)
title, labels, non_matched = extract_verbose_names(model) title, labels, non_matched = extract_verbose_names(model)
field_regex = ' *(.+) = (models\.[^\(]*)\((.*verbose_name=_\(.*\)|.*)\)' field_regex = ' *(.+) = (models\.[^\(]*)\((.*verbose_name=_\(.*\)|.*)\)'
@ -138,10 +137,11 @@ def source_with_verbose_names(model):
def print_app_with_verbose_names(app): def print_app_with_verbose_names(app):
print '##################################################################' print '##################################################################'
header = '# -*- coding: utf-8 -*-\n' header = '# -*- coding: utf-8 -*-\n'
for line in getsourcelines(app.models_module)[0][:10]: for line in getsourcelines(app.models_module):
if line.startswith('# -*- coding:'): if line in ['# -*- coding: utf-8 -*-',
'from django.utils.translation import ugettext as _', ]:
continue continue
elif line == 'from django.db import models\n': elif line == 'from django.db import models':
header += '''from django.db import models header += '''from django.db import models
from django.utils.translation import ugettext as _ from django.utils.translation import ugettext as _
''' '''

8
legacy/scripts/utils.py

@ -1,4 +1,12 @@
import inspect
def listify(function): def listify(function):
def f(*args, **kwargs): def f(*args, **kwargs):
return list(function(*args, **kwargs)) return list(function(*args, **kwargs))
return f return f
def getsourcelines(model):
return [line.rstrip('\n').decode('utf-8')
for line in inspect.getsourcelines(model)[0]]

182
parlamentares/models.py

@ -1,39 +1,61 @@
# -*- coding: utf-8 -*-
from django.db import models from django.db import models
from django.utils.translation import ugettext as _
class Legislatura(models.Model): class Legislatura(models.Model):
data_inicio = models.DateField() # dat_inicio data_inicio = models.DateField(verbose_name=_(u'Data Início')) # dat_inicio
data_fim = models.DateField() # dat_fim data_fim = models.DateField(verbose_name=_(u'Data Fim')) # dat_fim
data_eleicao = models.DateField() # dat_eleicao data_eleicao = models.DateField(verbose_name=_(u'Data Eleição')) # dat_eleicao
class Meta:
verbose_name = _(u'')
verbose_name_plural = _(u'')
class SessaoLegislativa(models.Model): class SessaoLegislativa(models.Model):
legislatura = models.ForeignKey(Legislatura) # num_legislatura legislatura = models.ForeignKey(Legislatura) # num_legislatura
numero = models.IntegerField() # num_sessao_leg numero = models.IntegerField(verbose_name=_(u'Número')) # num_sessao_leg
tipo = models.CharField(max_length=1) # tip_sessao_leg tipo = models.CharField(max_length=1, verbose_name=_(u'Tipo')) # tip_sessao_leg
data_inicio = models.DateField() # dat_inicio data_inicio = models.DateField(verbose_name=_(u'Data Início')) # dat_inicio
data_fim = models.DateField() # dat_fim data_fim = models.DateField(verbose_name=_(u'Data Fim')) # dat_fim
data_inicio_intervalo = models.DateField(blank=True, null=True) # dat_inicio_intervalo data_inicio_intervalo = models.DateField(blank=True, null=True, verbose_name=_(u'Início Intervalo')) # dat_inicio_intervalo
data_fim_intervalo = models.DateField(blank=True, null=True) # dat_fim_intervalo data_fim_intervalo = models.DateField(blank=True, null=True, verbose_name=_(u'Fim Intervalo')) # dat_fim_intervalo
class Meta:
verbose_name = _(u'Sessão Legislativa')
verbose_name_plural = _(u'Sessões Legislativas')
class Coligacao(models.Model): class Coligacao(models.Model):
legislatura = models.ForeignKey(Legislatura) # num_legislatura legislatura = models.ForeignKey(Legislatura, verbose_name=_(u'Legislatura')) # num_legislatura
nome_coligacao = models.CharField(max_length=50) # nom_coligacao nome_coligacao = models.CharField(max_length=50, verbose_name=_(u'Nome')) # nom_coligacao
numero_votos_coligacao = models.IntegerField(blank=True, null=True) # num_votos_coligacao numero_votos_coligacao = models.IntegerField(blank=True, null=True, verbose_name=_(u'Nº Votos Recebidos')) # num_votos_coligacao
class Meta:
verbose_name = _(u'Coligação')
verbose_name_plural = _(u'Coligações')
class Partido(models.Model): class Partido(models.Model):
sigla_partido = models.CharField(max_length=9) # sgl_partido sigla_partido = models.CharField(max_length=9, verbose_name=_(u'Sigla')) # sgl_partido
nome_partido = models.CharField(max_length=50) # nom_partido nome_partido = models.CharField(max_length=50, verbose_name=_(u'Nome')) # nom_partido
data_criacao = models.DateField(blank=True, null=True) # dat_criacao data_criacao = models.DateField(blank=True, null=True, verbose_name=_(u'Data Criação')) # dat_criacao
data_extincao = models.DateField(blank=True, null=True) # dat_extincao data_extincao = models.DateField(blank=True, null=True, verbose_name=_(u'Data Extinção')) # dat_extincao
class Meta:
verbose_name = _(u'Partido')
verbose_name_plural = _(u'Partidos')
class ComposicaoColigacao(models.Model): class ComposicaoColigacao(models.Model):
partido = models.ForeignKey(Partido) # cod_partido partido = models.ForeignKey(Partido) # cod_partido
coligacao = models.ForeignKey(Coligacao) # cod_coligacao coligacao = models.ForeignKey(Coligacao) # cod_coligacao
class Meta:
verbose_name = _(u'')
verbose_name_plural = _(u'')
class Localidade(models.Model): class Localidade(models.Model):
nome_localidade = models.CharField(max_length=50, blank=True, null=True) # nom_localidade nome_localidade = models.CharField(max_length=50, blank=True, null=True) # nom_localidade
@ -42,63 +64,97 @@ class Localidade(models.Model):
sigla_uf = models.CharField(max_length=2, blank=True, null=True) # sgl_uf sigla_uf = models.CharField(max_length=2, blank=True, null=True) # sgl_uf
sigla_regiao = models.CharField(max_length=2, blank=True, null=True) # sgl_regiao sigla_regiao = models.CharField(max_length=2, blank=True, null=True) # sgl_regiao
class Meta:
verbose_name = _(u'Município')
verbose_name_plural = _(u'Municípios')
class NivelInstrucao(models.Model): class NivelInstrucao(models.Model):
nivel_instrucao = models.CharField(max_length=50) # des_nivel_instrucao nivel_instrucao = models.CharField(max_length=50) # des_nivel_instrucao
class Meta:
verbose_name = _(u'')
verbose_name_plural = _(u'')
def __unicode__(self):
return self.nivel_instrucao
class SituacaoMilitar(models.Model): class SituacaoMilitar(models.Model):
descricao_tipo_situacao = models.CharField(max_length=50) # des_tipo_situacao descricao_tipo_situacao = models.CharField(max_length=50) # des_tipo_situacao
class Meta:
verbose_name = _(u'')
verbose_name_plural = _(u'')
class Parlamentar(models.Model): class Parlamentar(models.Model):
nivel_instrucao = models.ForeignKey(NivelInstrucao, blank=True, null=True) # cod_nivel_instrucao nivel_instrucao = models.ForeignKey(NivelInstrucao, blank=True, null=True, verbose_name=_(u'Nível Instrução')) # cod_nivel_instrucao
situacao_militar = models.ForeignKey(SituacaoMilitar, blank=True, null=True) # tip_situacao_militar situacao_militar = models.ForeignKey(SituacaoMilitar, blank=True, null=True, verbose_name=_(u'Situação Militar')) # tip_situacao_militar
nome_completo = models.CharField(max_length=50) # nom_completo nome_completo = models.CharField(max_length=50, verbose_name=_(u'Nome Completo')) # nom_completo
nome_parlamentar = models.CharField(max_length=50, blank=True, null=True) # nom_parlamentar nome_parlamentar = models.CharField(max_length=50, blank=True, null=True, verbose_name=_(u'Nome Parlamentar')) # nom_parlamentar
sexo = models.CharField(max_length=1) # sex_parlamentar sexo = models.CharField(max_length=1, verbose_name=_(u'Sexo')) # sex_parlamentar
data_nascimento = models.DateField(blank=True, null=True) # dat_nascimento data_nascimento = models.DateField(blank=True, null=True, verbose_name=_(u'Data Nascimento')) # dat_nascimento
numero_cpf = models.CharField(max_length=14, blank=True, null=True) # num_cpf numero_cpf = models.CharField(max_length=14, blank=True, null=True, verbose_name=_(u'C.P.F')) # num_cpf
numero_rg = models.CharField(max_length=15, blank=True, null=True) # num_rg numero_rg = models.CharField(max_length=15, blank=True, null=True, verbose_name=_(u'R.G.')) # num_rg
numero_tit_eleitor = models.CharField(max_length=15, blank=True, null=True) # num_tit_eleitor numero_tit_eleitor = models.CharField(max_length=15, blank=True, null=True, verbose_name=_(u'Título de Eleitor')) # num_tit_eleitor
cod_casa = models.IntegerField() # cod_casa cod_casa = models.IntegerField() # cod_casa
numero_gab_parlamentar = models.CharField(max_length=10, blank=True, null=True) # num_gab_parlamentar numero_gab_parlamentar = models.CharField(max_length=10, blank=True, null=True, verbose_name=_(u'Nº Gabinete')) # num_gab_parlamentar
numero_tel_parlamentar = models.CharField(max_length=50, blank=True, null=True) # num_tel_parlamentar numero_tel_parlamentar = models.CharField(max_length=50, blank=True, null=True, verbose_name=_(u'Telefone')) # num_tel_parlamentar
numero_fax_parlamentar = models.CharField(max_length=50, blank=True, null=True) # num_fax_parlamentar numero_fax_parlamentar = models.CharField(max_length=50, blank=True, null=True, verbose_name=_(u'Fax')) # num_fax_parlamentar
endereco_residencial = models.CharField(max_length=100, blank=True, null=True) # end_residencial endereco_residencial = models.CharField(max_length=100, blank=True, null=True, verbose_name=_(u'Endereço Residencial')) # end_residencial
localidade_resid = models.ForeignKey(Localidade, blank=True, null=True) # cod_localidade_resid localidade_resid = models.ForeignKey(Localidade, blank=True, null=True, verbose_name=_(u'Município')) # cod_localidade_resid
numero_cep_resid = models.CharField(max_length=9, blank=True, null=True) # num_cep_resid numero_cep_resid = models.CharField(max_length=9, blank=True, null=True, verbose_name=_(u'CEP')) # num_cep_resid
numero_tel_resid = models.CharField(max_length=50, blank=True, null=True) # num_tel_resid numero_tel_resid = models.CharField(max_length=50, blank=True, null=True, verbose_name=_(u'Telefone Residencial')) # num_tel_resid
numero_fax_resid = models.CharField(max_length=50, blank=True, null=True) # num_fax_resid numero_fax_resid = models.CharField(max_length=50, blank=True, null=True, verbose_name=_(u'Fax Residencial')) # num_fax_resid
endereco_web = models.CharField(max_length=100, blank=True, null=True) # end_web endereco_web = models.CharField(max_length=100, blank=True, null=True, verbose_name=_(u'HomePage')) # end_web
nome_profissao = models.CharField(max_length=50, blank=True, null=True) # nom_profissao nome_profissao = models.CharField(max_length=50, blank=True, null=True, verbose_name=_(u'Profissão')) # nom_profissao
endereco_email = models.CharField(max_length=100, blank=True, null=True) # end_email endereco_email = models.CharField(max_length=100, blank=True, null=True, verbose_name=_(u'Correio Eletrônico')) # end_email
descricao_local_atuacao = models.CharField(max_length=100, blank=True, null=True) # des_local_atuacao descricao_local_atuacao = models.CharField(max_length=100, blank=True, null=True, verbose_name=_(u'Locais de Atuação')) # des_local_atuacao
ativo = models.BooleanField() # ind_ativo ativo = models.BooleanField(verbose_name=_(u'Ativo na Casa?')) # ind_ativo
txt_biografia = models.TextField(blank=True, null=True) # txt_biografia txt_biografia = models.TextField(blank=True, null=True, verbose_name=_(u'Biografia')) # txt_biografia
unid_deliberativa = models.BooleanField() # ind_unid_deliberativa unid_deliberativa = models.BooleanField() # ind_unid_deliberativa
class Meta:
verbose_name = _(u'Parlamentar')
verbose_name_plural = _(u'Parlamentares')
def __unicode__(self):
return self.nome_completo
class TipoDependente(models.Model): class TipoDependente(models.Model):
descricao_tipo_dependente = models.CharField(max_length=50) # des_tipo_dependente descricao_tipo_dependente = models.CharField(max_length=50) # des_tipo_dependente
class Meta:
verbose_name = _(u'Tipo de Dependente')
verbose_name_plural = _(u'Tipos de Dependente')
class Dependente(models.Model): class Dependente(models.Model):
tipo_dependente = models.ForeignKey(TipoDependente) # tip_dependente tipo_dependente = models.ForeignKey(TipoDependente, verbose_name=_(u'Tipo')) # tip_dependente
parlamentar = models.ForeignKey(Parlamentar) # cod_parlamentar parlamentar = models.ForeignKey(Parlamentar) # cod_parlamentar
nome_dependente = models.CharField(max_length=50) # nom_dependente nome_dependente = models.CharField(max_length=50, verbose_name=_(u'Nome')) # nom_dependente
sexo = models.CharField(max_length=1) # sex_dependente sexo = models.CharField(max_length=1, verbose_name=_(u'Sexo')) # sex_dependente
data_nascimento = models.DateField(blank=True, null=True) # dat_nascimento data_nascimento = models.DateField(blank=True, null=True, verbose_name=_(u'Data Nascimento')) # dat_nascimento
numero_cpf = models.CharField(max_length=14, blank=True, null=True) # num_cpf numero_cpf = models.CharField(max_length=14, blank=True, null=True, verbose_name=_(u'CPF')) # num_cpf
numero_rg = models.CharField(max_length=15, blank=True, null=True) # num_rg numero_rg = models.CharField(max_length=15, blank=True, null=True, verbose_name=_(u'RG')) # num_rg
numero_tit_eleitor = models.CharField(max_length=15, blank=True, null=True) # num_tit_eleitor numero_tit_eleitor = models.CharField(max_length=15, blank=True, null=True, verbose_name=_(u'Nº Título Eleitor')) # num_tit_eleitor
class Meta:
verbose_name = _(u'Dependente')
verbose_name_plural = _(u'Dependentes')
class Filiacao(models.Model): class Filiacao(models.Model):
data_filiacao = models.DateField() # dat_filiacao data_filiacao = models.DateField(verbose_name=_(u'Data Filiação')) # dat_filiacao
parlamentar = models.ForeignKey(Parlamentar) # cod_parlamentar parlamentar = models.ForeignKey(Parlamentar) # cod_parlamentar
partido = models.ForeignKey(Partido) # cod_partido partido = models.ForeignKey(Partido, verbose_name=_(u'Partido')) # cod_partido
data_desfiliacao = models.DateField(blank=True, null=True) # dat_desfiliacao data_desfiliacao = models.DateField(blank=True, null=True, verbose_name=_(u'Data Desfiliação')) # dat_desfiliacao
class Meta:
verbose_name = _(u'Filiação')
verbose_name_plural = _(u'Filiações')
class TipoAfastamento(models.Model): class TipoAfastamento(models.Model):
@ -107,25 +163,41 @@ class TipoAfastamento(models.Model):
fim_mandato = models.BooleanField() # ind_fim_mandato fim_mandato = models.BooleanField() # ind_fim_mandato
descricao_dispositivo = models.CharField(max_length=50, blank=True, null=True) # des_dispositivo descricao_dispositivo = models.CharField(max_length=50, blank=True, null=True) # des_dispositivo
class Meta:
verbose_name = _(u'Tipo de Afastamento')
verbose_name_plural = _(u'Tipos de Afastamento')
class Mandato(models.Model): class Mandato(models.Model):
parlamentar = models.ForeignKey(Parlamentar) # cod_parlamentar parlamentar = models.ForeignKey(Parlamentar) # cod_parlamentar
tipo_afastamento = models.ForeignKey(TipoAfastamento, blank=True, null=True) # tip_afastamento tipo_afastamento = models.ForeignKey(TipoAfastamento, blank=True, null=True) # tip_afastamento
legislatura = models.ForeignKey(Legislatura) # num_legislatura legislatura = models.ForeignKey(Legislatura, verbose_name=_(u'Legislatura')) # num_legislatura
coligacao = models.ForeignKey(Coligacao, blank=True, null=True) # cod_coligacao coligacao = models.ForeignKey(Coligacao, blank=True, null=True, verbose_name=_(u'Coligação')) # cod_coligacao
tipo_causa_fim_mandato = models.IntegerField(blank=True, null=True) # tip_causa_fim_mandato tipo_causa_fim_mandato = models.IntegerField(blank=True, null=True) # tip_causa_fim_mandato
data_fim_mandato = models.DateField(blank=True, null=True) # dat_fim_mandato data_fim_mandato = models.DateField(blank=True, null=True, verbose_name=_(u'Fim do Mandato')) # dat_fim_mandato
numero_votos_recebidos = models.IntegerField(blank=True, null=True) # num_votos_recebidos numero_votos_recebidos = models.IntegerField(blank=True, null=True, verbose_name=_(u'Votos Recebidos')) # num_votos_recebidos
data_expedicao_diploma = models.DateField(blank=True, null=True) # dat_expedicao_diploma data_expedicao_diploma = models.DateField(blank=True, null=True, verbose_name=_(u'Expedição do Diploma')) # dat_expedicao_diploma
txt_observacao = models.TextField(blank=True, null=True) # txt_observacao txt_observacao = models.TextField(blank=True, null=True, verbose_name=_(u'Observação')) # txt_observacao
class Meta:
verbose_name = _(u'Mandato')
verbose_name_plural = _(u'Mandatos')
class CargoMesa(models.Model): class CargoMesa(models.Model):
nome = models.CharField(max_length=50) # des_cargo nome = models.CharField(max_length=50) # des_cargo
unico = models.BooleanField() # ind_unico unico = models.BooleanField() # ind_unico
class Meta:
verbose_name = _(u'Cargo da Mesa')
verbose_name_plural = _(u'Cargos da Mesa')
class ComposicaoMesa(models.Model): class ComposicaoMesa(models.Model):
parlamentar = models.ForeignKey(Parlamentar) # cod_parlamentar parlamentar = models.ForeignKey(Parlamentar) # cod_parlamentar
sessao_legislativa = models.ForeignKey(SessaoLegislativa) # cod_sessao_leg sessao_legislativa = models.ForeignKey(SessaoLegislativa) # cod_sessao_leg
cargo = models.ForeignKey(CargoMesa) # cod_cargo cargo = models.ForeignKey(CargoMesa) # cod_cargo
class Meta:
verbose_name = _(u'')
verbose_name_plural = _(u'')

Loading…
Cancel
Save