来自 rails 的空 CSV 文件
Empty CSV file from rails
我是 rails 上 ruby 的新手,我在将数据导出到 csv 时遇到问题。我关注了以下视频:
https://medium.com/coderaga/rails-import-export-csv-data-without-gem-fbf2a36a84f6
我也将 require 'csv' 放入 application.rb 文件中。
我的 student.rb 型号有:
def self.to_csv(fields = column_names, options = {})
CSV.generate(options) do |csv|
csv << fields
all.each do |student|
csv << student.attributes.values_at(*fields)
end
end
end
我的 students_controller 有以下内容:
def index
@students=Student.all
puts @students
respond_to do |format|
format.html
format.csv{send_data @students.to_csv(['UIN', 'Name' ,'Section', 'Attempts', 'Score'])}
end
end
我认为 all.each 语句是空的,因为当我做 puts student.attributes.values_at(*fields)
时,什么也没有,所以这就是为什么没有被写入的原因。但我不确定如何解决它。
Student Load (0.3ms) SELECT "students".* FROM "students"
#<Student:0x007f9a2386ddb8>
#<Student:0x007f9a2386dc78>
#<Student:0x007f9a2386db38>
CACHE Student Load (0.0ms) SELECT "students".* FROM "students"
请帮忙
尝试
where.each do |student|
puts student #Debug
csv << student.attributes.values_at(*fields)
end
我是 rails 上 ruby 的新手,我在将数据导出到 csv 时遇到问题。我关注了以下视频:
https://medium.com/coderaga/rails-import-export-csv-data-without-gem-fbf2a36a84f6
我也将 require 'csv' 放入 application.rb 文件中。
我的 student.rb 型号有:
def self.to_csv(fields = column_names, options = {})
CSV.generate(options) do |csv|
csv << fields
all.each do |student|
csv << student.attributes.values_at(*fields)
end
end
end
我的 students_controller 有以下内容:
def index
@students=Student.all
puts @students
respond_to do |format|
format.html
format.csv{send_data @students.to_csv(['UIN', 'Name' ,'Section', 'Attempts', 'Score'])}
end
end
我认为 all.each 语句是空的,因为当我做 puts student.attributes.values_at(*fields)
时,什么也没有,所以这就是为什么没有被写入的原因。但我不确定如何解决它。
Student Load (0.3ms) SELECT "students".* FROM "students"
#<Student:0x007f9a2386ddb8>
#<Student:0x007f9a2386dc78>
#<Student:0x007f9a2386db38>
CACHE Student Load (0.0ms) SELECT "students".* FROM "students"
请帮忙
尝试
where.each do |student|
puts student #Debug
csv << student.attributes.values_at(*fields)
end