Alexandre
61 posts
|
PessoALL, como eu faço para em uma aplicação que precisa acessar mais de uma base de dados me conectar com as outras bases de dados?
Tem a base de dados da Produção, do sistema, mas preciso acessar uma base de dadosd e outra aplicação. Como faço isso?
grato.
Alexandre.
|
|
|
Clovis
783 posts
|
no seu database.yml voce tem que configurar outra conexao assim:
e depois voce vai criar um model pra usar essa conexao nova..
mais ou menos assim.
:D
|
|
|
Marcelo Júnior
811 posts
|
Eehee… já foi pro meu del.icio.us!!!
|
|
|
Alexandre
61 posts
|
Maravilha..
Valeu mesmo.. foi de grande ajuda…
Abraços.
|
|
|
João Victor
94 posts
|
Olá.
Aproveitando o tópico, questiono uma coisa.
Daria pra criar “alias” para os campos?
Pq qual a ideia. Tem um sistema, e ele foi desenvolvido num banco de dados com tais campos.
Porém se amanha, tivesse uma integração a ser feita, onde é outro banco e os campos tem nomes diferentes, porém teoricamente teriam o mesmo conteudo.
Dai tem alguma forma de linkar isto, ou teria que trocar o fonte!?
João Victor
|
|
|
Clovis
783 posts
|
A Idéia é interessante.. mas nunca vi nada desse jeito… geralmente quando é necessário uma integração com outras bases de dados (outros nomes, outras estruturas) se cria uma camada intermediaria (WS,txt,etc) para trocar dados entre as bases…
|
|
|
João Victor
94 posts
|
Certamente. Entendo o que vc quer dizer.
Soh que surgiu esta duvida.
Mais beleza, tbm nem dei uma pesquisada pra ver se tem ou nao.
Vou pesquisar.
Valeu
|
|
|
João Victor
94 posts
|
Bom. Achei algo desse genero.
Talvez até funcione do mode que pensei.
set_table_name “novatabela”
self.establish_connection(:novodb)
set_primary_key “client_comment_id”
def body
read_attribute “client_comment_body”
end
def body=(value)
write_attribute “client_comment_body”, value
end
end
O que acham?
|
|
|
João Victor
94 posts
|
Na pratica:
$ ./script/console
Loading development environment.
>> a = CustomerNote.new(:body => "Hello World!")
=> #"Hello World!"}>
>> a.save
=> true
>> a
=> #"Hello World!", "client_comment_id"=>40}, @errors=#, @errors={}>>
>> b = CustomerNote.find(40)
=> #"Hello World!", "client_comment_id"=>"40"}>
>> b.body = "Goodbye...cruel... world."
=> "Goodbye...cruel... world."
>> b.save
=> true
>> CustomerNote.find(40)
=> #$ ./script/console
Loading development environment.
>> a = CustomerNote.new(:body => “Hello World!”)
=> #<CustomerNote:0xb78c6ffc @new_record=true, @attributes={"client_comment_body"=>"Hello World!“}>
>> a.save
=> true
>> a
=> #<CustomerNote:0xb78c6ffc @new_record=false, @attributes={”client_comment_body"=>"Hello World!", “client_comment_id”=>40}, @errors=#<ActiveRecord::Errors:0xb7890d6c @base=#, @errors={}>>
>> b = CustomerNote.find(40)
=> #<CustomerNote:0xb788ccd0 @attributes={"client_comment_body"=>"Hello World!", “client_comment_id”=>"40"}>
>> b.body = “Goodbye…cruel… world.”
=> “Goodbye…cruel… world.”
>> b.save
=> true
>> CustomerNote.find(40)
=> #<CustomerNote:0xb7886330 @attributes={"client_comment_body"=>"Goodbye…cruel… world.", “client_comment_id”=>"40"}>
>> CustomerNote.find(40).body
=> “Goodbye…cruel… world.”
>>
|
|
|
Clovis
783 posts
|
Cada dia me surpreendo mais com o rails.. ehehehehe
|