Twitter oAuth и Cod... Баллада о г... сихи лирик... стихи лири... Динамическ... Домашняя с... Использова... Использова... Отправка с... Создание ф... Шепот посл... TinyMCE в Rails стихи лири... Быстрая ра... Пишем собс... Создание с... Установка ... Ностальгия... Москва-Бел... стихи лири... Стихи про п... Крылья сти... Создание п... Простой по... Создание п... Одинокий в... Гражданин ... Несчастный... Сонет стих... Отрезок ст... Врагу не сд... Предчувств... Поиск в ст... Использова... Смерть дву... Использова... Как сделат... Как сделат... Облако тег... Южная сере... Программна... Codeigniter в де... CodeIgniter: фор... проверка в... стихи лири... WEB fetcher(scrappe... Простой Twitt... стихи твор... стихи лири... Побег с Сол... Отправка SMS... MS VSTO 2007/Infusio... Установка R... Степные тр... моя любовь. К твоим оз... Сомкнуть л... чтоб отдат... вот – вот ... еще не расс... Снег тишина и лу... и мира пово... что мой пос... Лишь ты. И т... ты любима ты чиста. Экспорт да... Я пью до дн... что нам теп... -Наш первый... Социальные... Социальные... Спит в можж... Воздух про... Стены рожденные ... эхо умрет. Неотправле... стихи лири... Он порезал... Боясь шагн... не осталос... Услышать з... Программир...
| Создание файлов PDF файлов в приложениях Ruby on Rails |
|
|
|
| 31.05.2011 02:12 |
|
Динамическая генерация PDF файлов очень полезна, когда нужно создать файл отчета илисохранить данные в удобном виде. Для этого существует такой плагин в Ruby on Rails «pdf-writer». Итак, разберемся как с ним работать. 1. Установим его в приложение. Для этого нужно ввести команду «gem install pdf-writer» C:\myproject>gem install pdf-writer
Successfully installed pdf-writer-1.1.8 1 gem installed Installing ri documentation for pdf-writer-1.1.8... Installing RDoc documentation for pdf-writer-1.1.8... 2. После установки, необходимо отредактировать файл «environment.rb»
И поместить в него такие строки:
require 'pdf/writer'
Mime::Type.register 'application/pdf', :pdf
Первая подключает этот плагин к нашему приложению, а вторая устанавливает новый тип данных Mime, с которыми оно будет работать. 3. На конец, самое главное,- собственно генератор PDF файлов в приложении. В файле app/controllers/application.rb пишем вспомогательный метод:
def render_to_pdf(options = nil) data = render_to_string(options)
pdf = PDF::HTMLDoc.new
pdf.set_option :bodycolor, :white
pdf.set_option :toc, false
pdf.set_option :portrait, true
pdf.set_option :links, false
pdf.set_option :webpage, true
pdf.set_option :left, '2cm'
pdf.set_option :right, '2cm'
pdf << data pdf.generate end
Этот метод будет использоваться при генерировании PDF файл. Он принимает данные и превращает их в файл.
4. Затем мы редактируем стандартный метод «index» нашего приложения:
def index @goods = Good.find(:all) respond_to do |format| format.html format.xml { head :ok } format.pdf { send_data render_to_pdf({ :action => 'index.rpdf', :layout => 'pdf_report' }) }
end end
Здесь мы организуем форматирование данных, получаемых из базы и перенапрваляем выход во вновь созданный вспомогательный метод «render_to_pdf».
5. Далее изменим файл вида «index» и вставим в него следующее:
<%= link_to 'PDF', formatted_goods_path(:pdf) %>
Линк вызывает метод контроллера для генерирования PDF документа.
Это все. Теперь, когда пользователь нажмет на вышеуказанный линк, то он получит PDF файл.
|