【问题标题】:Rails -- Passing radio button values to a parameterRails -- 将单选按钮值传递给参数
【发布时间】:2011-03-13 15:39:57
【问题描述】:

我正在尝试使用一些单选按钮来选择并将参数用作我的模型的查找条件...到目前为止我有。 查看

<% form_tag do %>
<p> <%= radio_button_tag :interest,  "apple" %> Apple </p>
<p> <%= radio_button_tag :interest, "orange" %> Orange </p>
<p> <%= radio_button_tag  :interest, "peach" %> Peach </p>
<p> <%= radio_button_tag :interest, "banana" %> Banana </p>
<p> <%= submit_tag 'Choice' %> </p>
<% end %> 
<p>Result: <%= @result %></p>

我如何获得@result = param[?],以便显示单选按钮的值?

最终,我会将参数放入一个查找条件中,它会是 Fruit.find(:all, :type => "name LIKE ?", param[?])

我看了Radio buttons on Rails,但我不知道如何制作一个表格,所以我可以读取参数值

【问题讨论】:

    标签: ruby-on-rails forms radio-button


    【解决方案1】:

    您可以随时查看生成的 html。在这种情况下(如果您不使用前缀),它应该类似于&lt;input name="interest" ... &gt;。所以,你可以通过params[:interest]获取参数值。

    评论
    纯html。如果你检查你的 rails 标签生成的 html,你会发现类似的东西。

    <input name="interest" value="apple" type="radio"> Apple <br/>
    <input name="interest" value="orange" type="radio"> Orange <br/>
    ...
    

    【讨论】:

    • 我该怎么做?我的意思是有一种方法可以用 rails 来做,所以我可以将任何参数的值作为对象传递(确定但由表单发送的值)。所以它会是 params[:apples or oranges 等? ]
    • 在您的控制器代码中,调用“params[:interest]”。出于调试目的(查看服务器日志中的值),您可以执行“puts params[:interest]”。
    • 我需要去掉表单标签吗?我以为你必须在 Rails 的应用程序中使用它?
    • 关于您编辑的第一条评论这与 ruby​​ 无关。此类单选按钮列表的浏览器将以“webpage.html?interest=orange”的形式发送参数。不是“orange=true”或其他任何东西。
    • 如果您愿意,我是否必须摆脱表单标签。 Rails 表单标签只生成 html 表单标签和一些内部内容。您也可以手动编写此内容。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-09-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-23
    相关资源
    最近更新 更多