在获得问题后,选择框正在清理

时间:2013-09-21 19:27:48

标签: ruby-on-rails ruby ruby-on-rails-3 ruby-on-rails-3.2 ruby-on-rails-3.1

我有一个选择框,其中显示了我的所有主持人,当我选择一个专家时,它显示了由选择了弹出的政策。

我的问题是在选择了一个导弹并获得我的结果后,我的选择框是从第一个专辑开始而不是所选的专辑,似乎是清理了我所做的选择

我的桌子

 TABLE EJECUTIVES
       |id|  |name| |lastname1|
 TABLE POLICIES
       |id|  |num_police|  |ejecutive_id|

我的模特

class Policy < ActiveRecord::Base
   unloadable
   belongs_to :ejecutive
   has_many :policy

   def self.search(search)
    if search
      find(:all, :conditions => ["ejecutive_id = ? ", search.to_i  ] )
    else
      find(:all)
    end
   end
end

class Ejecutive < ActiveRecord::Base
  has_many :policies
end

这是我的控制器

class PolicyManagement::PolicyController < ApplicationController
    def generate_print_ejecutive_comercial
      @ejecutives = Ejecutive.find(:all)
      @policies = Policy.search(params[:search]).paginate(:page => params[:page], :per_page => 10)
    end
end

这是我的观点

<% form_tag :controller=>"policy_management/policy",:action =>"generate_print_ejecutive_comercial", :method => 'get' do %>
    <%= select_tag "search", options_for_select(@ejecutives.collect {|t| [t.name.to_s+" "+t.lastname1.to_s,t.id]}) %>
    <%= submit_tag "Search", :name => nil %>
<% end %>

 Results
     <% @policies.each do |policy| %>
     <p> <%= policy.num_policy%> </p>
     <p> <%= policy.ejecutive.name %> </p>
     <p> <%= policy.ejecutive.last_name %> </p>
     <% end %>
     <%= will_paginate @policies %>

有人知道这个问题吗?我真的很感激帮助。

1 个答案:

答案 0 :(得分:2)

您需要在select_tag中指定所选值,如下所示

<%= select_tag "search", options_for_select( @ejecutives.collect 
                   {|t| [t.name.to_s+" "+t.lastname1.to_s,t.id]},
                   params[:search].to_i ) %>