Ruby on rails 如何将值从视图发送到控制器
我试图获取数据库表中新创建的行的id,以便以后使用它。但它不会被传递,它只停留在查看器中。在选项卡或窗口关闭后,我需要该id。我知道可能有其他方法可以找到该行的id,但由于一些更改,网站将有它需要通过使用id来完成 当访问查看器时,它会执行一些RubyonRails语句Ruby on rails 如何将值从视图发送到控制器,ruby-on-rails,ruby,view,controller,hidden-field,Ruby On Rails,Ruby,View,Controller,Hidden Field,我试图获取数据库表中新创建的行的id,以便以后使用它。但它不会被传递,它只停留在查看器中。在选项卡或窗口关闭后,我需要该id。我知道可能有其他方法可以找到该行的id,但由于一些更改,网站将有它需要通过使用id来完成 当访问查看器时,它会执行一些RubyonRails语句 <% if user_signed_in? %> <% @att_record = Attendance.new(:user_id => current_user.id, :time_in =>
<% if user_signed_in? %>
<% @att_record = Attendance.new(:user_id => current_user.id, :time_in => Time.now) %>
<% #@attendance_log = @att_record #tried this already, controller doesn't receive it %>
<%= hidden_field_tag :@get_int, :value => @att_record.id %>
<% @att_record.save %>
@att_记录就在视图中创建,而get_int和Attention_log则在unload函数中创建。这里需要考虑的几点:
@att_record.save
)@att_record.id
)。所以它的值是零 <% @att_record.save %>
<%= hidden_field_tag :attr_record_id, :value => @att_record.id %>
注意:我强烈建议使用适当的控制器流创建记录,而不是在视图中。试试。你可以在上面找到更多。尝试使用隐藏的字段标记,但它没有被存储。为了在使用该方法后测试它,我使用print“val={params[:attr_record_id]}”,在params处没有任何结果。我甚至用其他参数测试了它,它们确实得到了显示,但这一个没有。
<% @att_record.save %>
<%= hidden_field_tag :attr_record_id, :value => @att_record.id %>
@attendance_log = Attendance.find_by(id: params[:attr_record_id])