我有一个页面,允许用户选择过滤器来运行查询,然后显示给定结果的结果,但保留选定的过滤器以允许用户查看并调整它们并再次运行查询
过滤器显示在索引视图中,结果显示在结果视图中。
为了实现这一点,我有一个控制器,有两种方法索引和结果。
由于两个视图都需要显示过滤器,我实现了一个名为 _filters 的部分 索引和结果都会像这样呈现过滤器。
<%= render 'filters' %>
过滤器视图将像这样的HTML选择放在一起
<select id="centro_de_costos" name="centro_de_costos" class="small-12">
<% @cost_centers.each do |cost_center| %>
<option value="<%= cost_center['name'] %>"><%= cost_center['name'] %></option>
<% end %>
</select>
控制器的索引方法和结果方法都具有完全相同的逻辑来获取@cost_centers列表,但奇怪的是,这适用于索引视图,但不是在我显示结果视图时。
索引显示带有cost_centers的HTML选择控件,但结果是没有任何选项的选择
我已经调试了,我可以看到cost_centers正在为索引和结果正确返回
导致这种情况的原因以及如何解决。