Я создал простой генератор экспорта в csv, но хотел бы иметь возможность передавать параметры созданного_атата для последующего экспорта на основе 2 дат и экспорта записей между выбранными датами.
Вид:
<%= date_select :start_date, @start_date%>
<%= date_select :end_date, @end_date %>
<%= link_to("Generate Report", report_path(format: :csv) %>
Продолжение:
def order_report
@start_date = params[:start_date]
@end_date = params[:end_date]
@user_orders = Order.where(seller_id: current_user).where(order_status: 2).where(["date(created_at) BETWEEN ? AND ? ", @start_date, @end_date])
respond_to do |format|
format.html
format.csv { send_data @user_orders.to_csv, filename: "orders-#{Date.today}.csv" }
end
end
модель:
def self.to_csv
CSV.generate do |csv|
csv << %w{ id created_at order_type order_price }
all.each do |order|
csv << [order.id, order.ctreated_at, order.order_type, order.order_price ]
end
end
end
Но результат равен NULL:
ВЫБРАТЬ "заказы". * ИЗ "заказов" ГДЕ "заказы". "Seller_id" = $ 1 И "заказы". "Order_status" = $ 2 И (date (made_at) МЕЖДУ НУЛЬ И И НУЛЬ)
Когда я экспортирую, ничего не экспортирует, кроме заголовков.
Как я могу успешно это сделать?