2009-08-21 5 views
1

컨트롤러에는 3 가지 다른 액션이 있습니다. 각각은 다른 수의 매개 변수를 취합니다. 응용 프로그램에서 링크를 클릭하면 사용자가 모두 3 번을 실행합니다. 이제 사용자가 찾고자하는 것을 입력 할 수있는 필드가있는 양식이 필요합니다. 사용자가 양식을 작성할 때 제공되는 것에 따라 3 가지 조치 중 하나를 실행해야합니다.사용자로부터 입력을 받아서 Rails에서 다른 액션을 실행합니다.

간단히 말해서 양식에서 문자열을 가져와 필요한 동작을 식별하고 문자열을 매개 변수로 3 개의 동작 중 하나에 전달해야합니다.

죄송합니다 나는 레일에서 초보자입니다, 당신이 내 질문을 이해하지 않으면 난 항상 :)

감사 설명을 제공 할 것입니다.

[편집]

매개 변수를 제외한 모든 3 가지 동작은 거의 동일하게 작동합니다. 그래서 인덱스 페이지에는 다음과 같은 3 가지 링크가 있습니다. 에서

<h3> 
<% while j < @npa.size %> 
    <% if @npa[j] != nil%> 
    <%= link_to "#{@npa[j]}", :controller => "trunks", :action => "npanxx", :param1 => "#{@npa[j]}", :param2 => "#{@npa[j]}"%><br /> 
    <% end %> 
    <% j += 1 %> 
<% end %> 
</h3> 

:

<h3> 
<%= link_to "1. NPA", :controller => "trunks", :action => "npa" %> <br /> 
<%= link_to "2. Switch", :controller => "trunks", :action => "switches" %><br /> 
<%= link_to "3. Trunk Group CLLI", :controller => "trunks", :action => "clli" %> 
는 'NPA'조치를, 다시 다음 코드에 의해 생성 된 링크 목록이 나타납니다 최초의 호출 링크를 클릭 말 위의 코드에는 두 개의 매개 변수 (param1과 param2)가 다음 액션 'npanxx'에 전달됩니다.

달성해야 할 것은 위와 같지만 양식 필드에서 매개 변수를 가져와야합니다.

사용자가 제공하는 매개 변수에 따라 응용 프로그램에서 어떤 작업을 실행할지 결정할 수 있습니다. 예를 들어 위 작업의 매개 변수는 모두 숫자이지만 두 번째 작업의 경우 매개 변수는 모두 문자열입니다.

그래서 사용자의 입력을 컨트롤러에있는 작업으로 전달하는 방법에 대해서만 설명합니다. 도움말 모두

감사합니다 :) 그런 다음 전달 된 매개 변수에 대한 특정 작업에 리디렉션 '작업이 필요 정체성'을 수행하는 컨트롤러 액션에 양식을 제출 할 수

+0

여기에는 다양한 해결책이 있습니다. 일부 코드를 게시하여 최상의 솔루션에 대한 더 나은 아이디어를 얻을 수 있습니까? – Ben

+0

제 질문을 확인하십시오. 나는 더 많은 정보로 업데이 트되었습니다 :) Thanks Ben – b1gtuna

답변

0

.

더 고급 접근법은 라우팅 구성에 '식별 동작'논리를 추가하는 것이라고 생각합니다.

(당신은 표준 HTTP 응답을 원하는 경우) 또는 submit_tag (당신이 AJAX 응답을 원하는 경우) 컨트롤러, 간단한 submit_to_remote에 양식을 제출하는 방법에 대한 딜런 McClung에 질문에 관해서
+0

오케이 제 생각에는 "컨트롤러에 폼을 제출하는 법"입니다. 미안 해요 초보자 xD입니다. – b1gtuna

관련 문제