Rails简单形式显示特定记录

时间:2014-03-21 21:53:44

标签: ruby-on-rails

我试图制作一个非常简单的Go To表格。您输入workorder的ID,然后转到该记录的show页面。

这是迄今为止的表格:

<%= form_tag workorders_path, :action => 'show' do %>
<p>
  <%= text_field_tag :id, params[:id] %>
  <%= submit_tag "Go To", :name => nil %>

这是控制器中的show部分:

# GET /workorders/1
# GET /workorders/1.json
def show
  @workorder = Workorder.find(params[:id])

  respond_to do |format|
    format.html # show.html.erb
  format.json { render json: @workorder }
  end
end

我要进入新的工作单屏幕,而不是显示屏幕。

感谢您的帮助!

2 个答案:

答案 0 :(得分:0)

在您的网址中,您还需要提供ID,如果没有此ID,则无法点击显示,这只能通过使用javascript来实现。以下是您需要在js文件中添加的内容

$(your_submit_tag_id).click(function(e){
  window.location = "your_app_url/workorder/ " + $(#id).val()});

答案 1 :(得分:0)

您可以使用object方法将记录显示为

f.object.id

f.object.name

其中f.object给出active_record而f给出simple_form_builder