在我的控制器中我有:
def index
@title = 'asdsadas'
@kategoris = Tag.where("name like ?", "%#{params[:q]}%")
respond_to do |format|
format.html
format.json { render :json => @kategoris.map(&:attributes).map{|d| d.map{|d| d.map{|d| d.force_encoding("UTF-8") } } } }
end
end
我在视图中收到此错误:
RuntimeError in Admin::TagsController#index
can't modify frozen string
答案 0 :(得分:14)
你不能force_encoding
冻结字符串,因为那会修改它。你可以做的是使用副本:
d.map{ |d| d.dup.force_encoding("UTF-8") }