2010-05-09 4 views
0

Ребята из G'day, в настоящее время почти закончили писать приложение rails, которое позволяет загружать базу данных CSV. Это генерируется при первом просмотре индекса.Rails: Самый простой способ обеспечить загрузку файлов?

Есть ли простой способ вставить ссылку на помощник, который возвращает документ CSV? То есть легко ли вставлять ссылки на помощников? Это создало бы много проблем, с которыми мне стало намного легче.

+0

Вы должны принять некоторые из ваших ответов и есть несколько подобных вопросов уже на SO: http://stackoverflow.com/questions/1360682/rails-csvexport-to-csv-loop/1361155 –

ответ

2

Если вы придерживаетесь общих условностей, то вы зарегистрировали mime-тип для csv и вернули содержимое содержимого csv через ваше действие #index. Таким образом, ваш помощник ссылка будет выглядеть так:

link_to 'export as csv', posts_path(:format => :csv) 
0

Если, в обмен, файл генерируется, когда индекс первого зрения, но не Rails, вы можете избежать Standart визуализации и вызвать send_data или send_file (проверьте api для них).

# in your controller: 
def index 

    # your suff here 

    @csv_path = find_or_generate_csv_file 
    send_data @csv_path, :type=>"text/csv", :disposition=>'attachment' 
end 

protected 
    def find_or_generate_csv_file 
    #your file generation logic 
    end 
Смежные вопросы