2017-02-16 6 views
1

버튼을 사용하여 2 개의 레일 프로젝트를 통합하여 첫 번째 프로젝트를 두 번째 프로젝트로 연결합니다. 지금은이 코드를Form_tag 다른 폴더의 페이지로 연결

<%= form_tag fast_url_for(' ') do %> 
    <%= button_to AppConfig.app_clockout %> 
<% end %> 

을 내 현재 디렉토리가

/var/www/html/wizTime/wizProject/Source/project_1 

하지만 난이 다른 프로젝트의 홈 페이지로 리디렉션 할 수 있습니다 방법을 모르겠어요. 내 두 번째 프로젝트의 통합하고자하는 디렉토리는

/var/www/html/project_2 

입니다. 제게 아이디어를주십시오. 고맙습니다!

+0

* 양식 *을 다른 프로젝트에 연결해야하는 이유는 무엇입니까? 다른 프로젝트에 버튼/링크 만 있으면됩니까? 그렇다면 문제는 없지만 디렉터리 구조에 따라 다르다는 것을 확신 할 수는 없습니다. 결국 프로젝트를 배포 할 때 자신의 도메인을 갖게 될까요? 또는 하위 도메인입니까? 일반적으로 레일스 프로젝트는 서로 독립적으로 실행됩니다. 이런 식으로 두 사람을 만지작 거리는 것만은 아닙니다. –

+0

클릭하면 다른 페이지로 링크하는 방법을 알고 있습니다. 예, 버튼을 다른 프로젝트에 링크하기 만하면 홈 페이지가 표시됩니다. 그게 가능할까요? – skyranch

+0

예, 배포시 자체 도메인을 갖습니다. – skyranch

답변

1

다른 의견 작성자의 말처럼 다른 도메인에 대한 링크를 만들면됩니다. 배포 할 때 디렉토리 구조가 미묘하게 다를 수 있기 때문에 디렉토리 구조에 의존해서는 안됩니다.

대신 도메인을 사용하십시오.

개발 컴퓨터에서 다른 도메인 (예 : localhost:3000localhost:3001)을 사용할 수 있도록 도메인을 환경 변수에 넣을 수도 있습니다. 이처럼를 사용하십시오 :

<%= link_to 'My App', ENV['MY_APP_DOMAIN'] %> 
<%= link_to 'My Other App', ENV['MY_OTHER_APP_DOMAIN'] %> 

그런 다음 값을 설정하려면 로컬 컴퓨터에 환경 변수를 설정하는 방법은 구글.

버튼이되도록하려면 ... 양식을 사용할 필요가 없습니다. button_to는 자신의 양식을 작성하고 같은 방법으로 LINK_TO 예를 정확히 사용됩니다 : 당신이 정말로 사용할 필요가 없습니다 ... 그러나

<%= button_to 'My App', ENV['MY_APP_DOMAIN'] %> 
<%= button_to 'My Other App', ENV['MY_OTHER_APP_DOMAIN'] %> 

있는 A 단지 URL에 대한 GET을하는 경우 버튼에 이 같은 ...

당신은 단지에 링크-A CSS-클래스와 스타일에 전달할 수 있습니다

(당신이 만드는 행동 데이터 예를 들어 게시 폼 데이터를 게시 할 때이 버튼을 사용) 은 마치 단추 인 것처럼 보입니다. 부트 스트랩 클래스를 사용

예 :

<%= link_to 'My App', ENV['MY_APP_DOMAIN'], class: 'btn btn-success' %> 
<%= link_to 'My Other App', ENV['MY_OTHER_APP_DOMAIN'], class: 'btn btn-danger' %> 

또는 유사한.

+0

고마워요! 방금 localhost : 3001을 다른 터미널에서도 실행해야했습니다. 모든 것이 잘 작동합니다. 이제 프로젝트 1에서 인증 된 사용자가 다른 프로젝트에도 인증 할 수 있도록하는 방법에 문제가 있습니다. 두 프로젝트 모두 로그인 기능이 있지만 첫 번째 프로젝트에 이미 로그인 한 상태에서 두 번째 프로젝트에 로그인 할 수 있기를 바랍니다. 어떤 아이디어라도 큰 도움이 될 것입니다. 다시 감사합니다! – skyranch

+0

첫째로 - 나는 "레일에 단일 사인"이라는 단어를 붙이고 그것에 대해 알아낼 수있는 정도를 볼 것입니다 ... 생각만큼 쉬운 것은 아닙니다. 붙어 있다면 ... Stack Overflow에 관한 새로운 질문을하면 도움이 될 것입니다. –

+0

오, idk는 레일에서 싱글 사인온에 대해 이야기합니다. 감사! – skyranch

3

당신은 단지 LINK_TO을 원하는 프로젝트 나중에 도메인이있는 경우, 당신은 단지 레일에서이 같은 링크를 만들 수 있습니다 <%= link_to 'sec project', "http://www.rubyonrails.org/" %> 일반 HTML 링크를 생성합니다 : <a href=""http://www.rubyonrails.org/" ...> 이 양식은 일반적으로 다른 프로젝트에 연결하지 않아야을 ?! 양식을 제출 한 후보기를 다른 프로젝트로 리디렉션하려는 경우 컨트롤러 조치를 사용하고 제출 후 리디렉션 할 수 있습니다.