Hospedar projeto na KINGHOST... configurar meu projeto

422 views
Skip to first unread message

Jose Carlos Vicente Pereira

unread,
Apr 23, 2014, 4:03:37 PM4/23/14
to web2py-us...@googlegroups.com
Ola, pessoal bao tarde...

Desenvolvi um projeto PYTHON/WEB2PY, com banco POSTGRESQL... registrei um DOMINIO, contratei HOSPEDAGEM... no meu projeto o que eu tenho que configurar para rodar na net? 

Carlos Costa

unread,
Apr 23, 2014, 4:35:19 PM4/23/14
to web2py-us...@googlegroups.com
No seu projeto, nada.
Só vai ter que criar o banco no host e instalar o web2py de forma adequada.
A forma adequada depende do tipo de hospedagem, cada um tem uma forma de hospedar scripts Python.
Se for uma hospedagem tipo VPS fica muito mais fácil.
Hospedagem compartilhada já é mais complicado.
Não conheço o kinghost. Passei aperto foi com o hostgator que já estou abandonando.
Dizem que no kinghost tem instalação automática de web2py no painel de controle.
Se você conseguir instalar assim, ótimo.
Gere o pacote do seu app e instale ele no host pelo admin do web2py.


Em 23 de abril de 2014 17:03, Jose Carlos Vicente Pereira <carly...@hotmail.com> escreveu:
Ola, pessoal bao tarde...

Desenvolvi um projeto PYTHON/WEB2PY, com banco POSTGRESQL... registrei um DOMINIO, contratei HOSPEDAGEM... no meu projeto o que eu tenho que configurar para rodar na net? 

--
Você recebeu essa mensagem por estar inscrito no grupo web2py-users-brazil.
Para enviar uma mensagem ao grupo, envie email a: web2py-us...@googlegroups.com
Para se desinscrever, envie email a: web2py-users-br...@googlegroups.com
Para mais opções, visite o site do grupo em: http://groups.google.com/group/web2py-users-brazil?hl=en
---
Você recebeu essa mensagem porque está inscrito no grupo quot;web2py-users-brazil" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para web2py-users-br...@googlegroups.com.
Para mais opções, acesse https://groups.google.com/d/optout.



--
Att.

Carlos J. Costa
Cientista da Computação
Esp. Gestão em Telecom

EL MELECH NEEMAN!
אָמֵן

Isvaldo Fernandes

unread,
Apr 23, 2014, 4:39:46 PM4/23/14
to web2py-us...@googlegroups.com
Na minha opinião, a maneira mais rápida de instalar web2py remotamente  é no Digitalocean
https://www.digitalocean.com/community/articles/how-to-use-the-web2py-framework-to-quickly-build-your-python-app

Ari Sobel

unread,
Apr 23, 2014, 4:44:27 PM4/23/14
to web2py googlegroups
Ola....

Veja o já famoso post:

Jose Carlos Vicente Pereira

unread,
Apr 23, 2014, 5:25:11 PM4/23/14
to web2py-us...@googlegroups.com
blz ari613, olhei o primeiro artigo, pois o post no google groups nao abriu, mas ja deu pra ter uma boa ideia... 

yamandu, quando vc diz VPS ou COMPARTILHADA... poderia me dizer falar melhor entre essas duas situacoes...??

a minha ideia é... hospedar o aplicativo,,, acessar as telas, fazer cadastros, relatorios... esse VPS ou COMPARTILHADA, influencia nisso??

Ari Sobel

unread,
Apr 23, 2014, 5:32:38 PM4/23/14
to web2py googlegroups

Jose Carlos Vicente Pereira

unread,
Apr 23, 2014, 5:40:46 PM4/23/14
to web2py-us...@googlegroups.com
valeu ari613, esse link vai me ajudar muito.... acho q amanha ja estara liberado, tanto o DOMINIO quanto a HOSPEDAGEM... vamos ver no que dá... qualquer coisa eu dou um grito ai... rsss



Em quarta-feira, 23 de abril de 2014 17h03min37s UTC-3, Jose Carlos Vicente Pereira escreveu:

Flavio Santos

unread,
Apr 23, 2014, 11:50:52 PM4/23/14
to web2py-us...@googlegroups.com
José Carlos,

Eu tenho um projeto na kinghost e é muito tranquilo colocar para rodar.
Siga esse tutorial e seja feliz:

Flávio Santos
Projeto de Programador ;-)


Em quarta-feira, 23 de abril de 2014 17h03min37s UTC-3, Jose Carlos Vicente Pereira escreveu:

Carlos Costa

unread,
Apr 24, 2014, 7:42:17 AM4/24/14
to web2py-us...@googlegroups.com
Compartilhado, ou shared host, quer dizer que eles te dão um espaço virtual dividido com vários outros sites.
VPS é virtual private server, continua sendo virtual porém é um sistema inteiro pra você usar como se fosse um servidor dedicado.
Por ser virtual é mais barato, no meu caso agora estou na hostinger com um plano de VPS por R$ 19,00 mensais.
É muito barato, nem sei como conseguem esse preço. Mas está indo bem.

No caso do VPS você tem autonomia total para administrar. Você pode até escolher o SO.
No meu caso eu escolhi o Ubuntu Server 13.04.

As vantagens e desvantagens de cada um são pelo menos motivo: administração.
No shared host a administração é toda deles, te poupando várias preocupações, porém é mais engessado.
Caso você precise instalar algo diferente como bibliotecas, programas externos, etc, pode ser impossível
ou muito complicado. Geralmente você tem que abrir um ticket e pedir para fazerem. Demora e as vezes não fazem.

No VPS, você instala o que quiser, configura o que quiser como se fosse "na sua casa".
Então você tem liberdade total. Porém se der algum problema de instalação, configuração, etc, o problema é seu.
Claro que se o bicho pegar você pode contratar alguém para resolver o problema.
Alguns provedores como a virtuaserver que eu conheço tem a opção de contratar um VPS administrado.
Ou seja, você tem suporte deles na administração. Mas o preço se eleva consideravelmente, claro.

Minha dica, se você está com pressa, não quer perder tempo com configurações, ou não tem experiência com servidores
e não quer aprender agora, contrate kinghost ou pythonanywhere. Esse último é muito fácil de hospedar Web2py.

Espero ter esclarecido.


--
Você recebeu essa mensagem por estar inscrito no grupo web2py-users-brazil.
Para enviar uma mensagem ao grupo, envie email a: web2py-us...@googlegroups.com
Para se desinscrever, envie email a: web2py-users-br...@googlegroups.com
Para mais opções, visite o site do grupo em: http://groups.google.com/group/web2py-users-brazil?hl=en
---
Você recebeu essa mensagem porque está inscrito no grupo quot;web2py-users-brazil" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para web2py-users-br...@googlegroups.com.
Para mais opções, acesse https://groups.google.com/d/optout.

Jose Carlos Vicente Pereira

unread,
Apr 24, 2014, 7:56:06 AM4/24/14
to web2py-us...@googlegroups.com
blz galera, acho que agora consigo hospedar o projeto... valeu pelas dicas.. obrigado


Em quarta-feira, 23 de abril de 2014 17h03min37s UTC-3, Jose Carlos Vicente Pereira escreveu:

Jose Carlos Vicente Pereira

unread,
Apr 25, 2014, 6:46:34 AM4/25/14
to web2py-us...@googlegroups.com
ola, bom dia... abri um chamado para REALOCAÇAO de dominio na KINGHOST, me retornaram com a seguinte mensagem:

No momento não temos servidor web com a versão 2.7, no entanto temos a versão 2.6.6, o qual realocamos o seu domínio em um servidor com este suporte.

essa mudança de versão, causará algum problema?? 

vou usar PYTHON 2.7 / WEB2PY, banco de dados postgresql 8.3...



Em quarta-feira, 23 de abril de 2014 17h03min37s UTC-3, Jose Carlos Vicente Pereira escreveu:

Filipe Cifali

unread,
Apr 25, 2014, 6:54:28 AM4/25/14
to web2py-us...@googlegroups.com
Depende se tu usa alguma lib que precise, mas temos sim servidores com 2.7, apenas não é default que um domínio seja inserido lá.

PostgreSQL trabalhamos atualmente forcados na séria 9.x que já está estável a um bom tempo, seria melhor você atualizar para no mínimo 8.4.x


--
Você recebeu essa mensagem por estar inscrito no grupo web2py-users-brazil.
Para enviar uma mensagem ao grupo, envie email a: web2py-us...@googlegroups.com
Para se desinscrever, envie email a: web2py-users-br...@googlegroups.com
Para mais opções, visite o site do grupo em: http://groups.google.com/group/web2py-users-brazil?hl=en
---
Você recebeu essa mensagem porque está inscrito no grupo quot;web2py-users-brazil" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para web2py-users-br...@googlegroups.com.
Para mais opções, acesse https://groups.google.com/d/optout.



--
[ ]'s

Filipe Cifali Stangler

Jose Carlos Vicente Pereira

unread,
Apr 25, 2014, 7:22:13 AM4/25/14
to web2py-us...@googlegroups.com
Ola Filipe... 

sou iniciante, entao meu projeto, podemos dizer, so tem o basico mesmo... quanto ao POSTGRESQL, desculpe o engano, na verdade eu uso o 9.3... diante disto, acho que nao teremos problemas para eu fazer o tao sonhado teste de ver a aplicacao no ar...rss

obrigado pela atençao...




Em quarta-feira, 23 de abril de 2014 17h03min37s UTC-3, Jose Carlos Vicente Pereira escreveu:

Filipe Cifali

unread,
Apr 25, 2014, 7:24:11 AM4/25/14
to web2py-us...@googlegroups.com
Nada, qualquer coisa estou por aqui mas normalmente atendo via cif...@kinghost.com.br, este é meu e-mail pessoal.

Bom dia, 


[ ]'s


--
Você recebeu essa mensagem por estar inscrito no grupo web2py-users-brazil.
Para enviar uma mensagem ao grupo, envie email a: web2py-us...@googlegroups.com
Para se desinscrever, envie email a: web2py-users-br...@googlegroups.com
Para mais opções, visite o site do grupo em: http://groups.google.com/group/web2py-users-brazil?hl=en
---
Você recebeu essa mensagem porque está inscrito no grupo quot;web2py-users-brazil" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para web2py-users-br...@googlegroups.com.
Para mais opções, acesse https://groups.google.com/d/optout.

Jose Carlos Vicente Pereira

unread,
Apr 25, 2014, 7:40:41 AM4/25/14
to web2py-us...@googlegroups.com
legal Filipe, ja gravei teu email aqui, com certeza vou precisar sim de ajuda e dicas, pois nao tenho ainda pratica com servidor web, venho do VISUAL BASIC 6, uma ferramenta distante deste mundo web ne... mas, mais uma vez agradeço a disposicao



Em quarta-feira, 23 de abril de 2014 17h03min37s UTC-3, Jose Carlos Vicente Pereira escreveu:

Jose Carlos Vicente Pereira

unread,
Apr 25, 2014, 1:56:14 PM4/25/14
to web2py-us...@googlegroups.com
ola, ja postei meu projeto no servidor... criei o banco de dados... quando eu chamo meu dominio no browser aparece o seguinte endereço e dá erro... 



o suporte me disse q provavelmente é programação... alguem pode me dizer onde mexer para corrigir? percebo que nao ta chamando minha INDEX..





Em quarta-feira, 23 de abril de 2014 17h03min37s UTC-3, Jose Carlos Vicente Pereira escreveu:

Jose Carlos Vicente Pereira

unread,
Apr 25, 2014, 2:10:23 PM4/25/14
to web2py-us...@googlegroups.com
so acrescentando... minha aplicacao eu chamo com esse caminho...




Em quarta-feira, 23 de abril de 2014 17h03min37s UTC-3, Jose Carlos Vicente Pereira escreveu:

Ari Sobel

unread,
Apr 25, 2014, 2:23:55 PM4/25/14
to web2py-us...@googlegroups.com
Esse erro que deu é gerado pelo proprio web2py. 
É um ticket gerado pela aplicacao.

Esse ticket que contém o Erro fica gravado dentro da aplicaçao na pasta erros. Via FTP transfira-o para tua aplicaçao localhost, para conseguir ler o erro.

Enviado via iPhone
--

Jose Carlos Vicente Pereira

unread,
Apr 25, 2014, 2:33:17 PM4/25/14
to web2py-us...@googlegroups.com
baixei ele, mas veio com a extensao PHP... dai la no servidor, tem uma opcao VER... dai mostrou isso pra mim..


  1. (dp1
  2. S'output'
  3. p2
  4. S''
  5. sS'layer'
  6. p3
  7. S'/home/info-administrativo/apps_wsgi/infoadministrativo/applications/welcome/models/db.py'
  8. p4
  9. sS'code'
  10. p5
  11. S'# -*- coding: utf-8 -*- \n\n#########################################################################\n## This scaffolding model makes your app work on Google App Engine too\n#########################################################################\n\nif request.env.web2py_runtime_gae:            # if running on Google App Engine\n    db = DAL(\'gae\')                           # connect to Google BigTable\n    session.connect(request, response, db = db) # and store sessions and tickets there\n    ### or use the following lines to store sessions in Memcache\n    # from gluon.contrib.memdb import MEMDB\n    # from google.appengine.api.memcache import Client\n    # session.connect(request, response, db = MEMDB(Client()))\nelse:                                         # else use a normal relational database\n    db = DAL(\'sqlite://storage.sqlite\')       # if not, use SQLite or other DB\n## if no need for session\n# session.forget()\n\n#########################################################################\n## Here is sample code if you need for \n## - email capabilities\n## - authentication (registration, login, logout, ... )\n## - authorization (role based authorization)\n## - services (xml, csv, json, xmlrpc, jsonrpc, amf, rss)\n## - crud actions\n## (more options discussed in gluon/tools.py)\n#########################################################################\n\nfrom gluon.tools import *\nmail = Mail()                                  # mailer\nauth = Auth(globals(),db)                      # authentication/authorization\ncrud = Crud(globals(),db)                      # for CRUD helpers using auth\nservice = Service(globals())                   # for json, xml, jsonrpc, xmlrpc, amfrpc\nplugins = PluginManager()\n\nmail.settings.server = \'logging\' or \'smtp.gmail.com:587\'  # your SMTP server\nmail.settings.sender = \'y...@gmail.com\'         # your email\nmail.settings.login = \'username:password\'      # your credentials or None\n\nauth.settings.hmac_key = \'<your secret key>\'   # before define_tables()\nauth.define_tables()                           # creates all needed tables\nauth.settings.mailer = mail                    # for user email verification\nauth.settings.registration_requires_verification = False\nauth.settings.registration_requires_approval = False\nauth.messages.verify_email = \'Click on the link http://\'+request.env.http_host+URL(r=request,c=\'default\',f=\'user\',args=[\'verify_email\'])+\'/%(key)s to verify your email\'\nauth.settings.reset_password_requires_verification = True\nauth.messages.reset_password = \'Click on the link http://\'+request.env.http_host+URL(r=request,c=\'default\',f=\'user\',args=[\'reset_password\'])+\'/%(key)s to reset your password\'\n\n#########################################################################\n## If you need to use OpenID, Facebook, MySpace, Twitter, Linkedin, etc.\n## register with janrain.com, uncomment and customize following\n# from gluon.contrib.login_methods.rpx_account import RPXAccount\n# auth.settings.actions_disabled=[\'register\',\'change_password\',\'request_reset_password\']\n# auth.settings.login_form = RPXAccount(request, api_key=\'...\',domain=\'...\',\n#    url = "http://localhost:8000/%s/default/user/login" % request.application)\n## other login methods are in gluon/contrib/login_methods\n#########################################################################\n\ncrud.settings.auth = None                      # =auth to enforce authorization on crud\n\n#########################################################################\n## Define your tables below (or better in another model file) for example\n##\n## >>> db.define_table(\'mytable\',Field(\'myfield\',\'string\'))\n##\n## Fields can be \'string\',\'text\',\'password\',\'integer\',\'double\',\'boolean\'\n##       \'date\',\'time\',\'datetime\',\'blob\',\'upload\', \'reference TABLENAME\'\n## There is an implicit \'id integer autoincrement\' field\n## Consult manual for more options, validators, etc.\n##\n## More API examples for controllers:\n##\n## >>> db.mytable.insert(myfield=\'value\')\n## >>> rows=db(db.mytable.myfield==\'value\').select(db.mytable.ALL)\n## >>> for row in rows: print row.id, row.myfield\n#########################################################################\n'


como entender um trem desse? 



Em quarta-feira, 23 de abril de 2014 17h03min37s UTC-3, Jose Carlos Vicente Pereira escreveu:

Ari Sobel

unread,
Apr 25, 2014, 2:36:14 PM4/25/14
to web2py googlegroups
estranho estar com extensão PHP

Dê um download dele...


--

Jose Carlos Vicente Pereira

unread,
Apr 25, 2014, 2:36:44 PM4/25/14
to web2py-us...@googlegroups.com
pelo q vi, nao existe o banco de dados desse WELCOME... pois em vez de pegar essa pasta welcome, teria que pegar meu projeto "info_prev"

"info_prev/default/index"



Em quarta-feira, 23 de abril de 2014 17h03min37s UTC-3, Jose Carlos Vicente Pereira escreveu:

Jose Carlos Vicente Pereira

unread,
Apr 25, 2014, 2:39:58 PM4/25/14
to web2py-us...@googlegroups.com
o meu DOMINIO "www.info-administrativo.com.br" nao esta linkado ao meu projeto... esse endereço nao ta chamando meu projeto,,, chama o projeto WELCOME



Em quarta-feira, 23 de abril de 2014 17h03min37s UTC-3, Jose Carlos Vicente Pereira escreveu:

Ari Sobel

unread,
Apr 25, 2014, 2:41:01 PM4/25/14
to web2py googlegroups
isso ocorre, as vezes,  por que vc tem que einiciar o apache ali - 
um "macete" para resolver isso está ali no Tutrial do Junior Panther - mudar o Status do "ModSecurity"



--

Relsi Hur Maron

unread,
Apr 25, 2014, 2:43:05 PM4/25/14
to web2py-us...@googlegroups.com

Renomeia a tua aplicação para init que ela vai carregar como padrão

Jose Carlos Vicente Pereira

unread,
Apr 25, 2014, 3:04:47 PM4/25/14
to web2py-us...@googlegroups.com
minha aplicacao, tinha o nome de infoadministrativo... dai renomeei para "init"... dai aparceu erro tickt

    1. (dp1
    2. S'output'
    3. p2
    4. S''
    5. sS'layer'
    6. p3
    1. S'/home/info-administrativo/apps_wsgi/infoadministrativo/applications/init/models/db.py'
    2. p4
    3. sS'code'
    4. p5
    5. S'# -*- coding: utf-8 -*-\n\n#--------------------------BANCO DE DADOS DAS INFORMACOES----------------------------------\n\ndb = DAL(\'postgres://postgres:82621932@localhost:5432/infoadministrativo\')\nsession.connect(request, response, db=db)\n\nresponse.generic_patterns = [\'*\'] if request.is_local else []\n\nfrom gluon.tools import Auth, Crud, Service, PluginManager, prettydate\n\nauth = Auth(db)\ncrud, service, plugins = Crud(db), Service(), PluginManager()\n\nauth.settings.extra_fields [\'auth_user\'] = [Field ("id_cidade", "integer")]\n\n## create all tables needed by auth if not custom tables\nauth.define_tables(username=False, signature=False)\n\n## configure email\nmail = auth.settings.mailer\nmail.settings.server = \'logging\' or \'smtp.gmail.com:587\'\nmail.settings.sender = \'y...@gmail.com\'\nmail.settings.login = \'username:password\'\n\n## configure auth policy\nauth.settings.registration_requires_verification = False\nauth.settings.registration_requires_approval = False\nauth.settings.reset_password_requires_verification = True\n\n## if you need to use OpenID, Facebook, MySpace, Twitter, Linkedin, etc.\n## register with janrain.com, write your domain:api_key in private/janrain.key\nfrom gluon.contrib.login_methods.rpx_account import use_janrain\nuse_janrain(auth, filename=\'private/janrain.key\')\n\ne_m={\n    \'empty\':\'Este campo \xc3\xa9 obrigat\xc3\xb3rio\',\n    \'in_db\':\'Este registro j\xc3\xa1 existe no banco de dados\',\n    \'not_in_db\':\'Este registro n\xc3\xa3o existe no banco de dados\',\n    \'email\':\'Voc\xc3\xaa precisa inserir um e-mail v\xc3\xa1lido\',\n    \'image\':\'O arquivo precisa ser uma imagem v\xc3\xa1lida\',\n    \'not_in_set\':\'Voc\xc3\xaa precisa escolher um valor v\xc3\xa1lido\',\n    \'not_in_range\':\'Digite um n\xc3\xbamero entre %(min)s e %(max)s\',\n    }\n\nnotempty=IS_NOT_EMPTY(error_message=e_m[\'empty\'])\n\n#CRIA LISTA DE MESES PARA COMBOBOX\nmeses=(\'Janeiro\', \'Fevereio\', \'Mar\xc3\xa7o\', \'Abril\',\\\n    \'Maio\', \'Junho\', \'Julho\', \'Agosto\', \'Setembro\', \'Outubro\', \'Novembro\', \'Dezembro\')\n\nanos=(\'2011\', \'2011\', \'2012\', \'2013\', \'2014\', \'2015\')\n\nufs=(\'AC\', \'AL\', \'AM\', \'AP\', \'BA\', \'CE\', \'DF\', \'ES\', \'GO\', \'MA\', \'MG\', \'MS\',\\\n    \'MT\', \'PA\', \'PB\', \'PE\', \'PI\', \'PR\', \'RJ\', \'RN\', \'RO\', \'RR\', \'RS\', \'SC\', \'SE\', \'SP\', \'TO\')\n\nbancos=(\'Banco do Brasil\', \'Banco Ita\xc3\xba\', \'Banco Bradesco\', \'Caixa Econ\xc3\xb4mica\')\n\nddds=(\'61\', \'62\')\n\ndb.define_table("cadinpc",\n    Field("dtcad",  "date"),\n    Field("mes", "text", length=128,  notnull=True),\n    Field("ano", "integer", length=4),\n    Field(\'valor\',\'decimal(8,2)\',requires=IS_DECIMAL_IN_RANGE(-1e100,1e100,dot=\',\'),represent = lambda valor,row: \'R$ %.2f\' % valor),\n    Field("zerado", "boolean"),\n    auth.signature\n    )\ndb.cadinpc.mes.requires=IS_IN_SET(meses)\ndb.cadinpc.ano.requires=IS_IN_SET(anos)\n\n\ndb.define_table("cadcidade",\n    Field("nome", length=128, notnull=True, unique=True),\n    auth.signature,\n    format="%(nome)s"\n    )\n\n\ndb.define_table("cadaliquota",\n    Field("ano", "integer"),\n    Field("dtlei",  "date"),\n    Field("nrlei",  "text", length=10, notnull=True),\n    Field(\'valaliqserv\',\'decimal(8,2)\',requires=IS_DECIMAL_IN_RANGE(-1e100,1e100,dot=\',\'),represent = lambda valaliqserv,row: \'R$ %.2f\' % valaliqserv, default="11"),\n    Field(\'valaliqemp\',\'decimal(8,2)\',requires=IS_DECIMAL_IN_RANGE(-1e100,1e100,dot=\',\'),represent = lambda valaliqemp,row: \'R$ %.2f\' % valaliqemp),\n    Field("dtinicio", "date"),\n    Field("obs", "text",  length=128),\n    Field("id_cid", "integer", length=2, notnull=True, default=request.vars.cidade),\n    auth.signature\n    )\ndb.cadaliquota.ano.requires=IS_IN_SET(anos)\ndb.cadaliquota.id_cid.writable = False\ndb.cadaliquota.id_cid.readable = False     #DEIXA O CAMPO INVISIVEL NO FORM\n\n\ndb.define_table("cadempresa",\n    Field("ente", "text", length=128),\n    Field("EFEndereco", "text", length=128),\n    Field("EFBairro", "text", length=128),\n    Field("EFCidade", "text", length=128, default=request.vars.cidade),\n    Field("EFUF", "text", length=2, default="GO"),\n    Field("ecnpj", "text", length=18),\n    Field("EFCEP", "text", length=10),\n    Field("PagDir", "text", length=128),\n    Field("CertEnte", "text", length=128),\n    Field("RLNome1", "text", length=128),\n    Field("RLCPF1", "text", length=14),\n    Field("RLCargo1", "text", length=128),\n    Field("RLDDD1", "text", length=4, default="62"),\n    Field("RLTelefone1", "text", length=28),\n    Field("RLEmail1", "text", length=128),\n    Field("Data", "date"),\n    Field("EFObs", "text", length=128),\n    Field("fundo", "text", length=128),\n    Field("fcnpj", "text", length=18),\n    Field("UGEndereco", "text", length=128),\n    Field("UGBairro", "text", length=128),\n    Field("UGCidade", "text", length=128, default=request.vars.cidade),\n    Field("UGUF", "text", length=2, default="GO"),\n    Field("UGCEP", "text", length=10),\n    Field("CertUnidGest", "text", length=128),\n    Field("RLNome2", "text", length=128),\n    Field("RLCPF2", "text", length=14),\n    Field("RLCargo2", "text", length=128),\n    Field("RLDDD2", "text", length=4, default="62"),\n    Field("RLTelefone2", "text", length=28),\n    Field("RLEmail2", "text", length=128),\n    Field("RLObs", "text", length=128),\n    Field(\'AliqCor\',\'decimal(8,2)\',requires=IS_DECIMAL_IN_RANGE(-1e100,1e100,dot=\',\'),represent = lambda AliqCor,row: \'R$ %.2f\' % AliqCor),\n    Field(\'AliqJuro\',\'decimal(8,2)\',requires=IS_DECIMAL_IN_RANGE(-1e100,1e100,dot=\',\'),represent = lambda AliqJuro,row: \'R$ %.2f\' % AliqJuro),\n    Field("Banco", "text", length=128),\n    Field("Agencia", "text", length=10),\n    Field("Conta", "text", length=12),\n    Field("id_cid", "integer", length=2, notnull=True, default=request.vars.cidade),\n    auth.signature,\n    format="%(EFRazaoSocial)s"\n    )\ndb.cadempresa.EFUF.requires=IS_IN_SET(ufs)\ndb.cadempresa.UGUF.requires=IS_IN_SET(ufs)\ndb.cadempresa.Banco.requires=IS_IN_SET(bancos)\ndb.cadempresa.RLDDD1.requires=IS_IN_SET(ddds)\ndb.cadempresa.RLDDD2.requires=IS_IN_SET(ddds)\ndb.cadempresa.EFCidade.requires=IS_IN_DB(db, \'cadcidade.id\',\'cadcidade.nome\', \n                                 error_message=e_m[\'not_in_db\'])\ndb.cadempresa.UGCidade.requires=IS_IN_DB(db, \'cadcidade.id\',\'cadcidade.nome\', \n                                 error_message=e_m[\'not_in_db\'])\ndb.cadempresa.id_cid.writable = False\ndb.cadempresa.id_cid.readable = False     #DEIXA O CAMPO INVISIVEL NO FORM\n\n\ndb.define_table("cadmensagem",\n    Field("mes", "text", length=18),\n    Field("ano", "text", length=4),\n    Field("codorg", "integer",),\n    Field("obs", "text"),\n    Field(\'Rest\',\'decimal(8,2)\',requires=IS_DECIMAL_IN_RANGE(-1e100,1e100,dot=\',\'),represent = lambda Rest,row: \'R$ %.2f\' % Rest),\n    Field("id_cid", "integer", length=2, notnull=True, default=request.vars.cidade),\n    auth.signature\n    )\ndb.cadmensagem.mes.requires=IS_IN_SET(meses)\ndb.cadmensagem.ano.requires=IS_IN_SET(anos)\ndb.cadmensagem.id_cid.writable = False\ndb.cadmensagem.id_cid.readable = False     #DEIXA O CAMPO INVISIVEL NO FORM\n\n\ndb.define_table("cadorgao",\n    Field("descricao", "text", length=128),\n    Field("cnpj", "text", length=18),\n    Field("ender", "text", length=128),\n    Field("nr", "text", length=8),\n    Field("bairro", "text", length=128),\n    Field("cep", "text", length=10),\n    Field("cid", "text", length=128, default=request.vars.cidade),\n    Field("fone", "text", length=18),\n    Field("email", "text", length=128),\n    Field("obs", "text", length=128),\n    Field("patronal", "boolean"),\n    Field("id_cid", "integer", length=2, notnull=True, default=request.vars.cidade),\n    auth.signature\n    )\ndb.cadorgao.cid.requires=IS_IN_DB(db, \'cadcidade.nome\', \n                                 error_message=e_m[\'not_in_db\'])\ndb.cadorgao.id_cid.writable = False\ndb.cadorgao.id_cid.readable = False     #DEIXA O CAMPO INVISIVEL NO FORM\n\n\ndb.define_table("cadpendencias",\n    Field("mes", "text", length=128),\n    Field("ano", "integer"),\n    Field("descricao", "text", length=128),\n    Field("situa","boolean"),\n    Field("id_cid", "integer", length=2, notnull=True, default=request.vars.cidade),\n    auth.signature\n    )\ndb.cadpendencias.mes.requires=IS_IN_SET(meses)\ndb.cadpendencias.ano.requires=IS_IN_SET(anos)\ndb.cadpendencias.id_cid.writable = False\ndb.cadpendencias.id_cid.readable = False     #DEIXA O CAMPO INVISIVEL NO FORM\n\ndb.define_table("cadvalores",\n    Field("mes", "text", length=128, notnull=True),\n    Field("ano", "integer", notnull=True),\n    Field("orgao", "text", length=128, default=request.vars.id_org),\n    Field("dtpagto",  "date", notnull=True),\n    Field("dtvenc",  "date", notnull=True),\n    Field(\'basecalc\',\'decimal(8,2)\', notnull=True, requires=IS_DECIMAL_IN_RANGE(-1e100,1e100,dot=\',\'),represent = lambda Rest,row: \'R$ %.2f\' % basecal),\n    Field(\'servidor\',\'decimal(8,2)\', notnull=True, requires=IS_DECIMAL_IN_RANGE(-1e100,1e100,dot=\',\'),represent = lambda Rest,row: \'R$ %.2f\' % servidor),\n    Field(\'salfamilia\',\'decimal(8,2)\',requires=IS_DECIMAL_IN_RANGE(-1e100,1e100,dot=\',\'),represent = lambda Rest,row: \'R$ %.2f\' % salfamilia),\n    Field(\'patronal\',\'decimal(8,2)\', notnull=True, requires=IS_DECIMAL_IN_RANGE(-1e100,1e100,dot=\',\'),represent = lambda Rest,row: \'R$ %.2f\' % patronal),\n    Field(\'remuneracao\',\'decimal(8,2)\',notnull=True, requires=IS_DECIMAL_IN_RANGE(-1e100,1e100,dot=\',\'),represent = lambda Rest,row: \'R$ %.2f\' % remuneracao),\n    Field("qtdeserv", "integer", default="1", notnull=True),\n    Field("qtdedep", "integer", default="1", notnull=True),\n    Field("id_cid", "integer", length=2, notnull=True, default=request.vars.cidade),\n    auth.signature\n    )\ndb.cadvalores.orgao.requires=IS_IN_DB(db, \'cadorgao.id\',\'cadorgao.descricao\', \n                                 error_message=e_m[\'not_in_db\'])\ndb.cadvalores.mes.requires=IS_IN_SET(meses)\ndb.cadvalores.ano.requires=IS_IN_SET(anos)\ndb.cadvalores.id_cid.writable = False\ndb.cadvalores.orgao.writable = False   #BLOQUEIA A ALTERACAO NO CAMPO\ndb.cadvalores.id_cid.readable = False    \ndb.cadvalores.orgao.readable = False     #DEIXA O CAMPO INVISIVEL NO FORM\n'
    6. p6
    7. sS'snapshot'
    8. p7
    9. (dp8
    10. S'exception'
    11. p9




    --
    Você recebeu essa mensagem por estar inscrito no grupo web2py-users-brazil.
    Para enviar uma mensagem ao grupo, envie email a: web2py-us...@googlegroups.com
    Para se desinscrever, envie email a: web2py-users-br...@googlegroups.com
    Para mais opções, visite o site do grupo em: http://groups.google.com/group/web2py-users-brazil?hl=en
    ---
    Você recebeu essa mensagem porque está inscrito em um tópico no grupo "web2py-users-brazil" dos Grupos do Google.
    Para cancelar inscrição nesse tópico, acesse https://groups.google.com/d/topic/web2py-users-brazil/c9ysHJnkNWY/unsubscribe.
    Para cancelar inscrição nesse grupo e todos os seus tópicos, envie um e-mail para web2py-users-br...@googlegroups.com.

    Jose Carlos Vicente Pereira

    unread,
    Apr 25, 2014, 3:07:08 PM4/25/14
    to web2py-us...@googlegroups.com
    minha aplicacao, tinha o nome de infoadministrativo... dai renomeei para "init"... dai aparceu erro tickt

    1. (dp1
    2. S'output'
    3. p2
    4. S''
    5. sS'layer'
    6. p3
    7. S'/home/info-administrativo/apps_wsgi/infoadministrativo/applications/init/models/db.py'
    8. p4
    9. sS'code'
    10. p5
    11. S'# -*- coding: utf-8 -*-\n\n#--------------------------BANCO DE DADOS DAS INFORMACOES----------------------------------\n\ndb = DAL(\'postgres://postgres:82621932@localhost:5432/infoadministrativo\')\nsession.connect(request, response, db=db)\n\nresponse.generic_patterns = [\'*\'] if request.is_local else []\n\nfrom gluon.tools import Auth, Crud, Service, PluginManager, prettydate\n\nauth = Auth(db)\ncrud, service, plugins = Crud(db), Service(), PluginManager()\n\nauth.settings.extra_fields [\'auth_user\'] = [Field ("id_cidade", "integer")]\n\n## create all tables needed by auth if not custom tables\nauth.define_tables(username=False, signature=False)\n\n## configure email\nmail = auth.settings.mailer\nmail.settings.server = \'logging\' or \'smtp.gmail.com:587\'\nmail.settings.sender = \'y...@gmail.com\'\nmail.settings.login = \'username:password\'\n\n## configure auth policy\nauth.settings.registration_requires_verification = False\nauth.settings.registration_requires_approval = False\nauth.settings.reset_password_requires_verification = True\n\n## if you need to use OpenID, Facebook, MySpace, Twitter, Linkedin, etc.\n## register with janrain.com, write your domain:api_key in private/janrain.key\nfrom gluon.contrib.login_methods.rpx_account import use_janrain\nuse_janrain(auth, filename=\'private/janrain.key\')\n\ne_m={\n    \'empty\':\'Este campo \xc3\xa9 obrigat\xc3\xb3rio\',\n    \'in_db\':\'Este registro j\xc3\xa1 existe no banco de dados\',\n    \'not_in_db\':\'Este registro n\xc3\xa3o existe no banco de dados\',\n    \'email\':\'Voc\xc3\xaa precisa inserir um e-mail v\xc3\xa1lido\',\n    \'image\':\'O arquivo precisa ser uma imagem v\xc3\xa1lida\',\n    \'not_in_set\':\'Voc\xc3\xaa precisa escolher um valor v\xc3\xa1lido\',\n    \'not_in_range\':\'Digite um n\xc3\xbamero entre %(min)s e %(max)s\',\n    }\n\nnotempty=IS_NOT_EMPTY(error_message=e_m[\'empty\'])\n\n#CRIA LISTA DE MESES PARA COMBOBOX\nmeses=(\'Janeiro\', \'Fevereio\', \'Mar\xc3\xa7o\', \'Abril\',\\\n    \'Maio\', \'Junho\', \'Julho\', \'Agosto\', \'Setembro\', \'Outubro\', \'Novembro\', \'Dezembro\')\n\nanos=(\'2011\', \'2011\', \'2012\', \'2013\', \'2014\', \'2015\')\n\nufs=(\'AC\', \'AL\', \'AM\', \'AP\', \'BA\', \'CE\', \'DF\', \'ES\', \'GO\', \'MA\', \'MG\', \'MS\',\\\n    \'MT\', \'PA\', \'PB\', \'PE\', \'PI\', \'PR\', \'RJ\', \'RN\', \'RO\', \'RR\', \'RS\', \'SC\', \'SE\', \'SP\', \'TO\')\n\nbancos=(\'Banco do Brasil\', \'Banco Ita\xc3\xba\', \'Banco Bradesco\', \'Caixa Econ\xc3\xb4mica\')\n\nddds=(\'61\', \'62\')\n\ndb.define_table("cadinpc",\n    Field("dtcad",  "date"),\n    Field("mes", "text", length=128,  notnull=True),\n    Field("ano", "integer", length=4),\n    Field(\'valor\',\'decimal(8,2)\',requires=IS_DECIMAL_IN_RANGE(-1e100,1e100,dot=\',\'),represent = lambda valor,row: \'R$ %.2f\' % valor),\n    Field("zerado", "boolean"),\n    auth.signature\n    )\ndb.cadinpc.mes.requires=IS_IN_SET(meses)\ndb.cadinpc.ano.requires=IS_IN_SET(anos)\n\n\ndb.define_table("cadcidade",\n    Field("nome", length=128, notnull=True, unique=True),\n    auth.signature,\n    format="%(nome)s"\n    )\n\n\ndb.define_table("cadaliquota",\n    Field("ano", "integer"),\n    Field("dtlei",  "date"),\n    Field("nrlei",  "text", length=10, notnull=True),\n    Field(\'valaliqserv\',\'decimal(8,2)\',requires=IS_DECIMAL_IN_RANGE(-1e100,1e100,dot=\',\'),represent = lambda valaliqserv,row: \'R$ %.2f\' % valaliqserv, default="11"),\n    Field(\'valaliqemp\',\'decimal(8,2)\',requires=IS_DECIMAL_IN_RANGE(-1e100,1e100,dot=\',\'),represent = lambda valaliqemp,row: \'R$ %.2f\' % valaliqemp),\n    Field("dtinicio", "date"),\n    Field("obs", "text",  length=128),\n    Field("id_cid", "integer", length=2, notnull=True, default=request.vars.cidade),\n    auth.signature\n    )\ndb.cadaliquota.ano.requires=IS_IN_SET(anos)\ndb.cadaliquota.id_cid.writable = False\ndb.cadaliquota.id_cid.readable = False     #DEIXA O CAMPO INVISIVEL NO FORM\n\n\ndb.define_table("cadempresa",\n    Field("ente", "text", length=128),\n    Field("EFEndereco", "text", length=128),\n    Field("EFBairro", "text", length=128),\n    Field("EFCidade", "text", length=128, default=request.vars.cidade),\n    Field("EFUF", "text", length=2, default="GO"),\n    Field("ecnpj", "text", length=18),\n    Field("EFCEP", "text", length=10),\n    Field("PagDir", "text", length=128),\n    Field("CertEnte", "text", length=128),\n    Field("RLNome1", "text", length=128),\n    Field("RLCPF1", "text", length=14),\n    Field("RLCargo1", "text", length=128),\n    Field("RLDDD1", "text", length=4, default="62"),\n    Field("RLTelefone1", "text", length=28),\n    Field("RLEmail1", "text", length=128),\n    Field("Data", "date"),\n    Field("EFObs", "text", length=128),\n    Field("fundo", "text", length=128),\n    Field("fcnpj", "text", length=18),\n    Field("UGEndereco", "text", length=128),\n    Field("UGBairro", "text", length=128),\n    Field("UGCidade", "text", length=128, default=request.vars.cidade),\n    Field("UGUF", "text", length=2, default="GO"),\n    Field("UGCEP", "text", length=10),\n    Field("CertUnidGest", "text", length=128),\n    Field("RLNome2", "text", length=128),\n    Field("RLCPF2", "text", length=14),\n    Field("RLCargo2", "text", length=128),\n    Field("RLDDD2", "text", length=4, default="62"),\n    Field("RLTelefone2", "text", length=28),\n    Field("RLEmail2", "text", length=128),\n    Field("RLObs", "text", length=128),\n    Field(\'AliqCor\',\'decimal(8,2)\',requires=IS_DECIMAL_IN_RANGE(-1e100,1e100,dot=\',\'),represent = lambda AliqCor,row: \'R$ %.2f\' % AliqCor),\n    Field(\'AliqJuro\',\'decimal(8,2)\',requires=IS_DECIMAL_IN_RANGE(-1e100,1e100,dot=\',\'),represent = lambda AliqJuro,row: \'R$ %.2f\' % AliqJuro),\n    Field("Banco", "text", length=128),\n    Field("Agencia", "text", length=10),\n    Field("Conta", "text", length=12),\n    Field("id_cid", "integer", length=2, notnull=True, default=request.vars.cidade),\n    auth.signature,\n    format="%(EFRazaoSocial)s"\n    )\ndb.cadempresa.EFUF.requires=IS_IN_SET(ufs)\ndb.cadempresa.UGUF.requires=IS_IN_SET(ufs)\ndb.cadempresa.Banco.requires=IS_IN_SET(bancos)\ndb.cadempresa.RLDDD1.requires=IS_IN_SET(ddds)\ndb.cadempresa.RLDDD2.requires=IS_IN_SET(ddds)\ndb.cadempresa.EFCidade.requires=IS_IN_DB(db, \'cadcidade.id\',\'cadcidade.nome\', \n                                 error_message=e_m[\'not_in_db\'])\ndb.cadempresa.UGCidade.requires=IS_IN_DB(db, \'cadcidade.id\',\'cadcidade.nome\', \n                                 error_message=e_m[\'not_in_db\'])\ndb.cadempresa.id_cid.writable = False\ndb.cadempresa.id_cid.readable = False     #DEIXA O CAMPO INVISIVEL NO FORM\n\n\ndb.define_table("cadmensagem",\n    Field("mes", "text", length=18),\n    Field("ano", "text", length=4),\n    Field("codorg", "integer",),\n    Field("obs", "text"),\n    Field(\'Rest\',\'decimal(8,2)\',requires=IS_DECIMAL_IN_RANGE(-1e100,1e100,dot=\',\'),represent = lambda Rest,row: \'R$ %.2f\' % Rest),\n    Field("id_cid", "integer", length=2, notnull=True, default=request.vars.cidade),\n    auth.signature\n    )\ndb.cadmensagem.mes.requires=IS_IN_SET(meses)\ndb.cadmensagem.ano.requires=IS_IN_SET(anos)\ndb.cadmensagem.id_cid.writable = False\ndb.cadmensagem.id_cid.readable = False     #DEIXA O CAMPO INVISIVEL NO FORM\n\n\ndb.define_table("cadorgao",\n    Field("descricao", "text", length=128),\n    Field("cnpj", "text", length=18),\n    Field("ender", "text", length=128),\n    Field("nr", "text", length=8),\n    Field("bairro", "text", length=128),\n    Field("cep", "text", length=10),\n    Field("cid", "text", length=128, default=request.vars.cidade),\n    Field("fone", "text", length=18),\n    Field("email", "text", length=128),\n    Field("obs", "text", length=128),\n    Field("patronal", "boolean"),\n    Field("id_cid", "integer", length=2, notnull=True, default=request.vars.cidade),\n    auth.signature\n    )\ndb.cadorgao.cid.requires=IS_IN_DB(db, \'cadcidade.nome\', \n                                 error_message=e_m[\'not_in_db\'])\ndb.cadorgao.id_cid.writable = False\ndb.cadorgao.id_cid.readable = False     #DEIXA O CAMPO INVISIVEL NO FORM\n\n\ndb.define_table("cadpendencias",\n    Field("mes", "text", length=128),\n    Field("ano", "integer"),\n    Field("descricao", "text", length=128),\n    Field("situa","boolean"),\n    Field("id_cid", "integer", length=2, notnull=True, default=request.vars.cidade),\n    auth.signature\n    )\ndb.cadpendencias.mes.requires=IS_IN_SET(meses)\ndb.cadpendencias.ano.requires=IS_IN_SET(anos)\ndb.cadpendencias.id_cid.writable = False\ndb.cadpendencias.id_cid.readable = False     #DEIXA O CAMPO INVISIVEL NO FORM\n\ndb.define_table("cadvalores",\n    Field("mes", "text", length=128, notnull=True),\n    Field("ano", "integer", notnull=True),\n    Field("orgao", "text", length=128, default=request.vars.id_org),\n    Field("dtpagto",  "date", notnull=True),\n    Field("dtvenc",  "date", notnull=True),\n    Field(\'basecalc\',\'decimal(8,2)\', notnull=True, requires=IS_DECIMAL_IN_RANGE(-1e100,1e100,dot=\',\'),represent = lambda Rest,row: \'R$ %.2f\' % basecal),\n    Field(\'servidor\',\'decimal(8,2)\', notnull=True, requires=IS_DECIMAL_IN_RANGE(-1e100,1e100,dot=\',\'),represent = lambda Rest,row: \'R$ %.2f\' % servidor),\n    Field(\'salfamilia\',\'decimal(8,2)\',requires=IS_DECIMAL_IN_RANGE(-1e100,1e100,dot=\',\'),represent = lambda Rest,row: \'R$ %.2f\' % salfamilia),\n    Field(\'patronal\',\'decimal(8,2)\', notnull=True, requires=IS_DECIMAL_IN_RANGE(-1e100,1e100,dot=\',\'),represent = lambda Rest,row: \'R$ %.2f\' % patronal),\n    Field(\'remuneracao\',\'decimal(8,2)\',notnull=True, requires=IS_DECIMAL_IN_RANGE(-1e100,1e100,dot=\',\'),represent = lambda Rest,row: \'R$ %.2f\' % remuneracao),\n    Field("qtdeserv", "integer", default="1", notnull=True),\n    Field("qtdedep", "integer", default="1", notnull=True),\n    Field("id_cid", "integer", length=2, notnull=True, default=request.vars.cidade),\n    auth.signature\n    )\ndb.cadvalores.orgao.requires=IS_IN_DB(db, \'cadorgao.id\',\'cadorgao.descricao\', \n                                 error_message=e_m[\'not_in_db\'])\ndb.cadvalores.mes.requires=IS_IN_SET(meses)\ndb.cadvalores.ano.requires=IS_IN_SET(anos)\ndb.cadvalores.id_cid.writable = False\ndb.cadvalores.orgao.writable = False   #BLOQUEIA A ALTERACAO NO CAMPO\ndb.cadvalores.id_cid.readable = False    \ndb.cadvalores.orgao.readable = False     #DEIXA O CAMPO INVISIVEL NO FORM\n'
    12. p6
    13. sS'snapshot'
    14. p7
    15. (dp8
    16. S'exception'
    17. p
    ...


    Em quarta-feira, 23 de abril de 2014 17h03min37s UTC-3, Jose Carlos Vicente Pereira escreveu:

    Kayro

    unread,
    Apr 25, 2014, 4:33:01 PM4/25/14
    to web2py-us...@googlegroups.com
    vixi


    --
    Você recebeu essa mensagem por estar inscrito no grupo web2py-users-brazil.
    Para enviar uma mensagem ao grupo, envie email a: web2py-us...@googlegroups.com
    Para se desinscrever, envie email a: web2py-users-br...@googlegroups.com
    Para mais opções, visite o site do grupo em: http://groups.google.com/group/web2py-users-brazil?hl=en
    ---
    Você recebeu essa mensagem porque está inscrito no grupo quot;web2py-users-brazil" dos Grupos do Google.
    Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para web2py-users-br...@googlegroups.com.

    Relsi Hur Maron

    unread,
    Apr 25, 2014, 4:38:27 PM4/25/14
    to web2py-us...@googlegroups.com

    José, faz como o Ari sugeriu, copia o diretório errors/ da tua aplicação remota para a tua aplicação local, e dai abre o tiket pelo admin do web2py, vai ficar melhor para ti verificar o que esta ocorrendo.

    Jose Carlos Vicente Pereira

    unread,
    Apr 25, 2014, 4:50:57 PM4/25/14
    to web2py-us...@googlegroups.com
    certo... mas primeiro, como teria que configurar meu arquivo ROUTES.PY.... acho q ele nao bem redondinho... vejam

    ------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    #!/usr/bin/python
    # -*- coding: utf-8 -*-

    # default_application, default_controller, default_function
    # are used when the respective element is missing from the
    # (possibly rewritten) incoming URL
    #
    default_application = 'infoadministrativo'    # ordinarily set in base routes.py
    default_controller = 'default'  # ordinarily set in app-specific routes.py
    default_function = 'index'      # ordinarily set in app-specific routes.py

    # routes_app is a tuple of tuples.  The first item in each is a regexp that will
    # be used to match the incoming request URL. The second item in the tuple is
    # an applicationname.  This mechanism allows you to specify the use of an
    # app-specific routes.py. This entry is meaningful only in the base routes.py.
    #
    # Example: support welcome, admin, app and myapp, with myapp the default:

    routes_logging = False # set to False, 'debug', 'info', 'warning', 'error' or 'critical'

    routes_app = ((r'/(?P<app>welcome|admin|app)\b.*', r'\g<app>'),
                  (r'(.*)', r'infoadministrativo'),
                  (r'/?(.*)', r'infoadministrativo'))

    # routes_in is a tuple of tuples.  The first item in each is a regexp that will
    # be used to match the incoming request URL. The second item in the tuple is
    # what it will be replaced with.  This mechanism allows you to redirect incoming
    # routes to different web2py locations
    #
    # Example: If you wish for your entire website to use init's static directory:
    #
    #   routes_in=( (r'/static/(?P<file>[\w./-]+)', r'/init/static/\g<file>') )
    #

    routes_in = ((r'.*:/favicon.ico', r'/examples/static/favicon.ico'),
                 (r'.*:/robots.txt', r'/examples/static/robots.txt'),
                 ((r'.*http://otherdomain.com.* (?P<any>.*)', r'/app/ctr\g<any>')))

    # routes_out, like routes_in translates URL paths created with the web2py URL()
    # function in the same manner that route_in translates inbound URL paths.
    #

    routes_out = ((r'.*http://otherdomain.com.* /app/ctr(?P<any>.*)', r'\g<any>'),
                  (r'/app(?P<any>.*)', r'\g<any>'))

    # Error-handling redirects all HTTP errors (status codes >= 400) to a specified
    # path.  If you wish to use error-handling redirects, uncomment the tuple
    # below.  You can customize responses by adding a tuple entry with the first
    # value in 'appName/HTTPstatusCode' format. ( Only HTTP codes >= 400 are
    # routed. ) and the value as a path to redirect the user to.  You may also use
    # '*' as a wildcard.
    #
    # The error handling page is also passed the error code and ticket as
    # variables.  Traceback information will be stored in the ticket.
    #
    # routes_onerror = [
    #     (r'init/400', r'/init/default/login')
    #    ,(r'init/*', r'/init/static/fail.html')
    #    ,(r'*/404', r'/init/static/cantfind.html')
    #    ,(r'*/*', r'/init/error/index')
    # ]

    # specify action in charge of error handling
    #
    # error_handler = dict(application='error',
    #                      controller='default',
    #                      function='index')

    # In the event that the error-handling page itself returns an error, web2py will
    # fall back to its old static responses.  You can customize them here.
    # ErrorMessageTicket takes a string format dictionary containing (only) the
    # "ticket" key.

    # error_message = '<html><body><h1>Invalid request</h1></body></html>'
    # error_message_ticket = '<html><body><h1>Internal error</h1>Ticket issued: <a href="/admin/default/ticket/%(ticket)s" target="_blank">%(ticket)s</a></body></html>'

    # specify a list of apps that bypass args-checking and use request.raw_args
    #
    #routes_apps_raw=['myapp']
    #routes_apps_raw=['myapp', 'myotherapp']

    def __routes_doctest():
        '''
        Dummy function for doctesting routes.py.
        
        Use filter_url() to test incoming or outgoing routes;
        filter_err() for error redirection.
        
        filter_url() accepts overrides for method and remote host:
            filter_url(url, method='get', remote='0.0.0.0', out=False)

        filter_err() accepts overrides for application and ticket:
            filter_err(status, application='app', ticket='tkt')
        
        >>> filter_url('http://domain.com/favicon.ico')
        >>> filter_url('https://domain.com/robots.txt')
        >>> filter_url('http://domain.com/app/ctr/fcn')
        >>> filter_url('HTTP://DOMAIN.COM/app/ctr/fcn')
        >>> filter_url('http://domain.com/app/ctr/fcn?query')
        >>> filter_url('http://otherdomain.com/fcn')
        >>> filter_out('/app/ctr/fcn')
        '/ctr/fcn'
        >>> filter_url('https://otherdomain.com/app/ctr/fcn', out=True)
        '/ctr/fcn'
        >>> filter_url('http://otherdomain.com/app/ctr/fcn', out=True)
        '/fcn'
        >>> filter_url('http://otherdomain.com/app/ctr/fcn?query', out=True)
        '/fcn?query'
        >>> filter_url('http://otherdomain.com/app/ctr/fcn#anchor', out=True)
        '/fcn#anchor'
        >>> filter_err(200)
        200
        >>> filter_err(399)
        399
        >>> filter_err(400)
        400
        >>> filter_url('http://domain.com/welcome', app=True)
        'welcome'
        >>> filter_url('http://domain.com/', app=True)
        'myapp'
        >>> filter_url('http://domain.com', app=True)
        'myapp'
        >>> compile_re('.*http://otherdomain.com.* (?P<any>.*)', '/app/ctr\g<any>')[0].pattern
        '^.*http://otherdomain.com.* (?P<any>.*)$'
        >>> compile_re('.*http://otherdomain.com.* (?P<any>.*)', '/app/ctr\g<any>')[1]
        '/app/ctr\\\\g<any>'
        >>> compile_re('/$c/$f', '/init/$c/$f')[0].pattern
        '^.*?:https?://[^:/]+:[a-z]+ /(?P<c>\\\\w+)/(?P<f>\\\\w+)$'
        >>> compile_re('/$c/$f', '/init/$c/$f')[1]
        '/init/\\\\g<c>/\\\\g<f>'
        '''
        pass

    if __name__ == '__main__':
        import doctest
        from gluon.rewrite import select, load, filter_url, filter_out, filter_err, compile_re
        select()
        load(routes=__file__)
        doctest.testmod()
    ------------------------------------------------------------------------------------------------------------------------------------------------------------------------

    lembrando, que este arquivo foi criado pelo servidor, eu so alterei colocando o nome do meu aplicativo "infoadministrativo"...

    dai, vcs conferindo e persistindo os erros, vou copir o tickt para meu micro...




    --
    Você recebeu essa mensagem por estar inscrito no grupo web2py-users-brazil.
    Para enviar uma mensagem ao grupo, envie email a: web2py-us...@googlegroups.com
    Para se desinscrever, envie email a: web2py-users-br...@googlegroups.com
    Para mais opções, visite o site do grupo em: http://groups.google.com/group/web2py-users-brazil?hl=en
    ---
    Você recebeu essa mensagem porque está inscrito em um tópico no grupo "web2py-users-brazil" dos Grupos do Google.
    Para cancelar inscrição nesse tópico, acesse https://groups.google.com/d/topic/web2py-users-brazil/c9ysHJnkNWY/unsubscribe.
    Para cancelar inscrição nesse grupo e todos os seus tópicos, envie um e-mail para web2py-users-br...@googlegroups.com.
    Reply all
    Reply to author
    Forward
    0 new messages