2014-12-03 24 views
0

隨着railscast我學會了導出信息到Excel的紅寶石軌道上。問題是我傳遞的數據編碼錯誤,看起來像_òû _Ü__________。我怎樣才能通過正確的內碼:utf-8或utf-16?Ruby xls編碼

控制器的動作:

def employees 
    start_date = Date.parse(params[:start_date]) 
    end_date = Date.parse(params[:end_date]) 
    @event_members = EventMember.where('created_at > ? AND created_at < ?', start_date, end_date) 
    respond_to do |format| 
     format.xls 
    end 
end 

xls.erb模板:

<table border="1"> 
    <tr> 
    <th>ФИО оцениваемого</th> 
    <th>Должность текущая</th> 
    </tr> 
    <% @event_members.each do |event_member| %> 
    <tr> 
    <td><%= event_member.member.full_name %></td> 
    </tr> 
    <% end %> 
</table> 
+1

['format.force_encoding(編碼:: UTF_8).xls'](http://www.ruby-doc.org/ core-2.1.5/Encoding.html) – mudasobwa 2014-12-03 13:29:03

+0

@mudasobwa'參數的錯誤數目(2代表1)' – 2014-12-03 13:31:31

+0

對不起,我現在無法檢查代碼,這就是爲什麼我只是刪除了一個鏈接到文檔的評論而不是完整的答案。但解決方案是查找字符串並強制其編碼爲「UTF-8」。 – mudasobwa 2014-12-03 13:34:50

回答

0

我只需要簡單的meta標籤與utf-8編碼

<meta content="text/html; charset=UTF-8" http-equiv="Content-Type"></meta>