如何将表单输入发送到ruby函数

时间:2014-10-16 23:29:46

标签: ruby-on-rails ruby

我试图让用户输入一个id,然后检索具有该id的属性。如果我只是在ruby属性中使用默认生成的序列,我该怎么做?我发现我的表格不能说

  <%= form_tag(guidelines_path, :method => "get", id: "search-form") do %>
  <td><%= label_tag(:seeChildren, "See Immediate Children")%></td>
  <td><%= text_field_tag :seeChildren, params[:seeChildren], placeholder: "Enter ID" %></td>
  <td><%= submit_tag "Search", :name => nil %></td>
  <% end %>

app / controllers / guidelines_controller.rb有

    def index
    if params[:invsearch]
      @guidelines = Guideline.invsearch(params[:invsearch]).all
    elsif params[:progsearch]
      @guidelines = Guideline.progsearch(params[:progsearch]).all
    elsif params[:investor].present? && params[:program_code].present?
      @guidelines = Guideline.invprogsearch(params).all
    elsif params[:client].present? && params[:program_code].present?
      @guidelines = Guideline.cliprogsearch(params).all
    elsif params[:seeChildren]
      @guidelines = Guideline.find(params[:seeChildren])
    elsif params[:seeParent]
        @guidelines = Guideline.seeParent(params[:seeParent]).all
    else
      @guidelines = Guideline.all
    end
  end

基本上可以运行几个不同的查询,它们都可以正常工作。

不要担心儿童在我的应用中的含义,我只想弄清楚如何使用用户提供的参数来检索属性。

1 个答案:

答案 0 :(得分:0)

您告诉指南找到:seeChildren,这是错误的 这应该是你想要的:

@guidelines = Guideline.find(params[:seeChildren])