2011-06-13 3 views
0

내가하려고하는 것은 사용자가 웹 페이지에 넣는 것을 기반으로 레일즈를 사용하여 데이터베이스에 동적으로 연결하는 것이다. 나는 루비를 처음 접했고 어떻게해야할지 모르겠다. 일반적인 데이터베이스를 원하지만 액티브 레코드를 사용하면 실제 데이터베이스를 가지고 있어야하며 좋지 않습니다. 실제로 서버에 연결하지 않고도 모든 데이터베이스에 연결할 수 있기를 원합니다.레일 사용자 입력에 기반한 동적 데이터베이스 연결?

아이디어가 있으십니까?

건배, 안드레이

답변

1

당신은 당신이 당신은 심지어 전에이 작업을 수행 할 수 있어야한다

ActiveRecord::Base.establish_connection(
:adapter => 'mysql', 
:host => 'localhost', 
:username => 'name', 
:password => 'password', 
:database => 'db_name' 
) 

흐름 중에 어떤 시점에서 establish_connection를 호출하여 사용하려는 데이터베이스 연결을 변경할 수 있습니다 필터 (필요한 경우)를 수행하거나 개별 모델에서 establish_connection으로 전화하여 다른 데이터베이스를 사용하도록하십시오.

+0

나는 그것을 알고 있지만 동시에 2 개의 데이터베이스에 연결하여 데이터를 1에서 다른 것으로 매핑 할 수 있기를 원하며 데이터베이스가 localhost에 없으며 연결하고자하는 모든 데이터베이스 클라이언트가 없습니다. 모든 보석을 설치할 수 있습니다 – JustMe

+0

원격 물건에 설치되는 db 클라이언트에 의존하지 않는 커넥터가 필요합니다 – JustMe

+0

데이터베이스에 액세스하려면 데이터베이스에 액세스하기 위해 커넥터에 연결해야합니다. 데이터베이스는 localhost에있을 필요는 없지만 연결할 커넥터가 열려 있어야합니다. Rails 코드는 커넥터를 통해서만 데이터베이스에 액세스 할 수 있습니다. – DGM