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.

Reply via email to