2016-08-19 2 views
0

Мой CSV генерируется полностью правильно. Я хочу напечатать заголовки CSV полужирным шрифтом. Есть ли способ напечатать их жирным шрифтом.Печать CSV-заголовков жирным шрифтом в Rails

Мой код, который печатает простой CSV.

<%= CSV.generate do |csv| 

    csv << ["REF", "Customer Name", "Property Address", "Moving Date", "Mobile Phone", "Operator", "Status"] 
    @results.each do |result| 
     csv << [result.id, result.customer_name, result.address_label, result.moving_date.strftime("%b %d, %Y"), "", result.operator.try(:name), result.status ] 

end.html_safe 
%> 

Заранее спасибо!

+0

Вы пытались обернуть свои значения 'VALUE'? например, вместо '' REF "' он станет '" REF "'. –

+0

@TamerShlash Это было бы проанализировано странно или было бы проанализировано, но в открытом виде. Я абсолютно уверен, что этого не может быть сделано. CSV не поддерживает форматирование (кроме, конечно, от его печати в виде шапок) - это просто данные. Если вы хотите сделать форматирование, CSV не является типом файла для вас. И о, здесь - это лучше объясняет вашу ситуацию. [ссылка] (http://stackoverflow.com/questions/3749020/how-to-bold-csv-data-in-excel) – jemonsanto

+1

Я думал о вашем вопросе, и многие люди путают CSV с XLS, потому что excel open Большинство CSV-файлов, CSV не имеют каких-либо форматов, что вы действительно хотите сделать, это экспортировать XLS – MZaragoza

ответ

1

Я использовал камень под названием «axlsx_rails», чтобы помочь и его очень простой

пример моего контроллера

class ProductsController < ApplicationController 
    def index 
    @products = Product.order('created_at DESC') 
    respond_to do |format| 
     format.html 
     format.xlsx { 
     response.headers['Content-Disposition'] = 'attachment; filename="all_products.xlsx"' 
     } 
    end 
    end 
end 

пример мой взгляд XLSX

#app/views/products/index.xlsx.axlsx 
wb = xlsx_package.workbook 
wb.styles do |style| 
    header_cell = style.add_style(b: true) 

    wb.add_worksheet(name: "Products") do |sheet| 
    sheet.add_row ["Title", "Price"], :style=>[header_cell, header_cell] 
    @products.each do |product| 
    sheet.add_row [product.title, product.price] 
    end 
    end 
end 

ссылку на эту точку зрения

<%= link_to 'Download as .xlsx', products_path(format: :xlsx) %> 

, если вы хотите увидеть пример код в действии я создал Git репо, где можно увидеть все, что я сделал https://github.com/mzaragoza/sample_exporting_xls

Надеется, что это помогает

1

это не может быть сделано; CSV - текстовый формат.

Для этого вам понадобится другой документ типа файла.

Смежные вопросы