0

Есть ли способ или пример для экспорта xls на rails 2.3.5 без использования драгоценных камней и чего-то сложного?xls export problemusing params

Я пытаюсь экспортировать в XLS с условиями по ejectuve_id, что я выбрал я этот код

*********It s in my controller******** 
     @search_ejecutive = params[:search_ejecutive].to_i 
     @search_status = params[:status_id].to_i 
     @list_ejecutives_comision = Ejecutive.find(:all) 
     ejecutive_ids = [] 

     obj_user.ejecutives.each do |ejecutive| 
     @list_ejecutives_comision << Ejecutive.find(ejecutive.id) 
     end 

     @list_policies_search = Policy.deleted_is(0) 

     if params[:search_ejecutive].to_i!=0 
     @list_policies_search = @list_policies_search.ejecutive_id_is(@search_ejecutive) 
     end 

     ejecutive_ids = [] 
     obj_user.ejecutives.each do |ejecutive| 
     ejecutive_ids << ejecutive.id 
     end 

     if !ejecutive_ids.blank? 
      @list_policies_search = @list_policies_search.ejecutive_id_in(ejecutive_ids) 
     end 

    @list_policies_search = @list_policies_search.deleted_is(0) 
    @list_policies = @list_policies_search.paginate(:page => params[:page], :per_page => 10) 

И здесь я показываю ссылки, которые я пытался

<% form_remote_tag :url=>{:action=>"generate_print_ejecutive_comercial"},:before=>"load_close('loading_search')",:success=>"load_off('loading_search')" do -%> 


    <label>Ejecutivo:</label> 
    <%= select_tag 'search_ejecutive',"<option value=\"\">Seleccione</option>"+options_for_select(@list_ejecutives_comision.collect {|t| [t.name.to_s+" "+t.lastname1.to_s,t.id]})%> 

    <input name="Buscar" value="Buscar" type="submit" /><span id="loading_search"></span> 
<% end %> 
    <%= link_to("xls","http://localhost:3000/policy_management/policy/generate_print_ejecutive/generate_print_ejecutive.xls")%> 

    <%= link_to "xls", :controller=>"policy_management/policy",:action=>"generate_print_ejecutive",:format=>"xls" ,:search => params[:search_ejecutive],:page => params[:page] %> 

    <%= link_to 'Imprimir', :controller=>"policy_management/policy",:action=>"generate_print_ejecutive", :format=>"pdf" %> 
    <div id="table"> 
<%= render :partial=>"table2" %> 

Мои : partial table2 является результатом @list_policies Мой учитель не хочет, не хочет раскрывать мне секрет, сказал мне, что трюк

@list_policies 

Я пытался экспортировать вручную и я попытался это

@list_policies.find(:all,:conditions=>"ejecutive id = 1") 

Кто-нибудь может мне помочь с этим, мой teache сказал мне, что мне нужно экспортировать: search_ejecutive Params

Я буду признателен всем помочь

ответ

0

Существует способ, которым новейший формат xls может быть представлен xml, вы можете прочитать об этом here.

Так что ваш контроллер может ответить .xls запросов, а затем вы можете иметь вид generate_print_executive.xls.erb как это:

<?xml version="1.0"?> 
<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" 
      xmlns:o="urn:schemas-microsoft-com:office:office" 
      xmlns:x="urn:schemas-microsoft-com:office:excel" 
      xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" 
      xmlns:html="http://www.w3.org/TR/REC-html40"> 
    <Worksheet ss:Name="Sheet1"> 
    <Table> 
     <% @list_policies.each do |policy| %> 
     <Row> 
      <Cell> 
      <Data ss:Type="String"><%= policy.column_data %></Data> 
      </Cell> 
     </Row> 
     <% end %> 
    </Table> 
    </Worksheet> 
</Workbook> 

Обратите внимание, что это просто фиктивный пример того, как создать .xls без использования какого-либо драгоценного камня, я не смог понять, что вам нужно на вашем посту, я в основном отвечаю за заголовок сообщения: P