我想知道如何在导入并解析它时更改CSV文件的编码.我有这个代码:
csv = CSV.parse(output, :headers => true, :col_sep => ";")
csv.each do |row|
row = row.to_hash.with_indifferent_access
insert_data_method(row)
end
Run Code Online (Sandbox Code Playgroud)
当我读取我的文件时,我收到此错误:
Encoding::CompatibilityError in FileImportingController#load_file
incompatible character encodings: ASCII-8BIT and UTF-8
Run Code Online (Sandbox Code Playgroud)
我读过row.force_encoding('utf-8')但它不起作用:
NoMethodError in FileImportingController#load_file
undefined method `force_encoding' for #<ActiveSupport::HashWithIndifferentAccess:0x2905ad0>
Run Code Online (Sandbox Code Playgroud)
谢谢.
我想将文件从我的计算机复制到另一个指定的路径.该文件必须由用户选择a file_field并且目标已经是硬编码的.我怎样才能做到这一点 ?谢谢.
我实际上有一个名为"cond"的字符串.这是该字符串的内容:
"20 < 50"
Run Code Online (Sandbox Code Playgroud)
我想将它插入这样的条件:(示例)
if 20 < 50
return "Hello"
Run Code Online (Sandbox Code Playgroud)
但那个条件是一个字符串,所以我不能这样写:
if cond
return "Hello"
Run Code Online (Sandbox Code Playgroud)
所以我想知道是否可以将字符串转换为条件以设置为"if"条件.如果有可能,我该怎么办?
谢谢.
我想用Kaminari分页宝石对我的对象进行分页.我的控制器中有这一行:
@products = Product.order("id").find_all_by_id(params[:id])
Run Code Online (Sandbox Code Playgroud)
我认为这一行:
<%= paginate @products %>
Run Code Online (Sandbox Code Playgroud)
在我的模型中的那一行:
paginates_per 20
Run Code Online (Sandbox Code Playgroud)
当我打开我的页面应该列出我的对象时,我有这样的错误消息:
undefined method `current_page' for #<Array:0x2964690>
Run Code Online (Sandbox Code Playgroud)
在我的<%= paginate @products %>行中引发了例外.
我已经为另一个项目做了一个分页,它的工作非常好.有人可以帮帮我吗?
谢谢 !