0

我在 Rails 中导出到 CSV,一切似乎都正常,没有错误,并且正在生成文件,但只有列标题被导出,没有其他数据。

这是一些代码:

在控制器中:

@students = Student.where("START_DATE >= ? and END_DATE <= ? and COURSE_NAME like ?", params[:start_date], params[:end_date], params[:course_name]).select('name, course')

(...)

format.csv { send_data @students .to_csv }

在模型中:

def self.to_csv(options = {})
  CSV.generate(options) do |csv|
    csv << column_names
    all.each do |valeo|
      csv << valeo.attributes.values_at(*column_names)
    end
  end
end

我发现问题的原因是当我点击链接时

= link_to "Export Records", student_path(:format => :csv)

@students 是空的。我不知道为什么?或如何解决问题。

4

0 回答 0