提出这个问题我已经搜索并阅读了form_helpers指南。
我正在创建一个像工作板一样的控制器。 在形式上,用户可以选择支付多少以及(小时,天,合同)。
所以我的表格看起来像这样
null
并显示
# _form.html.erb
<div class="field">
<%= f.label :pay, "Pay" %><br>
<%= f.number_field :pay, required: true %>
</div>
而不是“/ xxx”我希望显示用户选择。 在形式上,我想要一个包含3个条目“小时”,“日”和“合同”的列表
我测试了类似的东西,但我不明白
# show.html.erb
<%= @thecontroller.pay %> / xxx
我需要创建另一个列吗? 除了表单之外,我还需要创建一个帮助器或其他代码吗?
谢谢你的时间。
答案 0 :(得分:0)
使用select
方法。第二个参数是一个数组数组,元素首先是要显示的值,第二个是要返回的值。
<%= f.select :pay, [['Hour', 1], ['Day' , 2], ['Contract', 3]], required: true %>
为show
页面创建帮助方法..
class ApplicationController < ActionController::Base
helper_method :show_pay
def show_pay(n)
%w(x Hour Day Contract)[n]
end
end
在你看来,你可以做......
<%= show_pay(@thecontroller.pay) %> / xxx