O Web2py permite trabalhar com vários bancos de dados na mesma aplicação ou escolher a qual deles fazer sua conexão.
Assim, fazer o que você sugeriu acima é muito simples. A lógica foi a que você escreveu mesmo. No entanto, precisa ter em mente algumas coisas: 1) Dependendo da quantidade de bancos de dados existentes, prepare-se para algum (enorme!) trabalho para sincronizar as versões do seu schema, manutenção de tabelas em vários BD's, etc. 2) O seu banco de dados de autenticação de usuários precisa ser diferente daquele que vai guardar os dados de sua aplicação, já que é pelo usuário autenticado que você vai determinar aonde estão os dados sobre os quais ele vai trabalhar. Caso os logins de seus usuários já indiquem a qual banco de dados ele irá se contectar, esse problema é diminuído. É certo que cada aplicação tem requisitos específicos, mas tenho visto que vale muito mais a pena trabalhar com um banco de dados unificado e investir na otimização da infra de BD (servidores, cache, índices, às vezes queries na mão, etc.) As duas abordagens: unificar o BD e separá-lo para cada cliente tem prós e contras. Sua necessidade é que vai determinar qual escolher. 2013/10/31 Carlynhos77 <carlynho...@hotmail.com>: > Ola, bom dia... > > Estou desenvolvendo uma aplicação que será disponibilizada para vários > clientes, nisso terei para cada cliente um banco de dados (prefeitura).. > gostaria de saber dos colegas, como posso identificar o banco de dados que > cada cliente deverá ter acesso, no meu arquivo DB.PY, eu tenho a string de > conexao: > > import psycopg2 > db = DAL('postgres://postgres:123@localhost:5432/saude') > > penso que teria q ser nesse ponto, ao usuario ao digitar seu login, ja seria > também identificado ao qual banco de dados ele pertence... daria eu teria > por exemplo as opcoes: > > import psycopg2 > se login 1 > db = DAL('postgres://postgres:123@localhost:5432/saude_1') > > se login 2 > db = DAL('postgres://postgres:123@localhost:5432/saude_2') > > se login 3 > db = DAL('postgres://postgres:123@localhost:5432/saude_3') > > > ou talvez, seria um unico banco de dados, mas teria vários esquemas, no caso > teria um esquema para cada usuário, iria precisar da mesma logica para > identificar a qual esquema ele pertence... > > > alguém tem alguma dica sobre isso? > > > > > -- > Resources: > - http://web2py.com > - http://web2py.com/book (Documentation) > - http://github.com/web2py/web2py (Source code) > - https://code.google.com/p/web2py/issues/list (Report Issues) > --- > You received this message because you are subscribed to the Google Groups > "web2py-users" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to web2py+unsubscr...@googlegroups.com. > For more options, visit https://groups.google.com/groups/opt_out. -- Resources: - http://web2py.com - http://web2py.com/book (Documentation) - http://github.com/web2py/web2py (Source code) - https://code.google.com/p/web2py/issues/list (Report Issues) --- You received this message because you are subscribed to the Google Groups "web2py-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to web2py+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.