new on rails,我在将select_tag值(在视图文件中)传递给控制器时遇到问题。
我的视图控制器文件就像
class ProjectStatusController < ApplicationController
def index
@projects = Project.find(:all, :select => "name")
end
def show
lookup = params[:project]
@rows = Project.find_by_lookup(lookup)
end
end
和查看文件就像
<% form_tag("project_status", :controller => "ProjectStatus", :action => "show", :method=>'get' ) do %>
<%= select_tag 'project', options_from_collection_for_select(@projects,"id", "name"),:onchange => "this.form.submit();" %>
<% end %>
<%
if !@rows.nil?
@rows.each do |row|
end
%>
<%= row[:name] %>
<% end %>
我基本上想要实现的是 - 基于select标签中的选定值 我想显示数据库中所选项目的信息(在同一视图页面上)
答案 0 :(得分:0)
首先,您应该写<%= form_tag
而不是<% form_tag
然而,您选择字段id
(options_from_collection_for_select(@projects,"id", "name")
)
但是在方法中显示您按字段查找搜索记录
答案 1 :(得分:0)
您可以使用此类内容来解决此问题
<%= check_box_tag "projectids[]",project.id %>
这将显示每个条目的复选框。并且复选框通过其id链接到项目对象。在控制器方法中,您将收到项目ID。
然后直接使用submit标签将参数传递给方法。