Pada post kali ini saya akan membahas dasar-dasar penggunaan gem prawn untuk Ruby on Rails.
Prawn adalah sebuah gem untuk Ruby on Rails yang digunakan untuk memudahkan kita membuat / generate file PDF.
- Pertama-tama buat project baru menggunakan PostgreSQL
$ rails new namaproject -d postgresql
$ cd namaproject
- Buka project menggunakan text editor dan tambahkan gem pada Gemfile nya
-
Lalu ketik kode di bawah ini pada terminal
$ bundle install
- Setelah itu kita buat CRUD sebagai contoh table yang akan di export menjadi file PDF
$ rails generate model Product name:string category:string quantity:integer
$ rake db:create
$ rake db:migrate
- Buat root untuk show-nya, buka routes.rb (config/routes.rb)
Rails.application.routes.draw do resources :products do member do get 'print' get 'print_all' end end root :to => "products#index" end
- Lanjut buka controller products (app/controllers/products_controller.rb) tambahkan:
class ProductsController < ApplicationController def print_all @products = Product.all render 'print' end end
- Pada text editor anda cari file (app/views/products) dan tambahkan file print_all.pdf.prawn
- Cari file (app/views/products/print_all.pdf.prawn) dan tambahkan:
prawn_document(:margin => 15, :page_size => [612, 936]) do |pdf| pdf.move_down (20) pdf.text "LIST PRODUK", :size => 15, :style => :bold, align: :center pdf.move_down(10) pdf.stroke_horizontal_line(2, pdf.bounds.width) pdf.move_down(20) products = [ ] products << [ {:content => "Nama Barang" , :align => :center, :background_color => "000000", :text_color => "ffffff" }, {:content => "Kategori", :align => :center, :background_color => "000000", :text_color => "ffffff" }, {:content => "Stock Barang", :align => :center, :background_color => "000000", :text_color => "ffffff" }, ] @products.each do |product| products << [ {:content => "#{product.name}", :align => :center}, {:content => "#{product.category}", :align => :center }, {:content => "#{product.quantity}", :align => :center }, ] end pdf.table products, :cell_style => { :border_style => :grid}, :position => :left end
- Buka project menggunakan text editor dan tambahkan gem pada Gemfile nya
- Jalankan server
$ rails s
kurang lebih seperti ini:
klik tombol print:
Untuk lebih jelasnya silahkan baca dokumentasi di:
Sekian post kali ini tentang tutorial print pdf menggunakan gem prawn pada Ruby on Rails, nantikan postingan lain yang lebih menarik lagi, stay on belajarrubyonrails.com
Bye
ersad@doterb.com | Developer at doterb solution