Feb
20
2008
Akhirnya setelah tiga hari nanya ma om google dan akangaziz, terinstallah sudah gem Rmagick yang selama ini aku coba install tapi gagal melulu
. Kuncinya cuma satu, install aja semua paket yang berbau magick linux yang bersangkutan (kalo di ubuntu coba search yang magick dengan command apt-cache search magick, karena aku sendiri juga gak ngerti paket mana yang memang bener2 dibutuhkan untuk install gem rmagick). Dengan begitu, bertambahlah 1 gem di PCku dan tentu saja akan terus bertambah
. Berikut adalah daftar gem-nya :
root@ditto:/home/ditto# gem list
*** LOCAL GEMS ***
actionmailer (1.3.3)
actionpack (1.13.3)
actionwebservice (1.2.3)
activerecord (1.15.3)
activesupport (1.4.2)
archive-tar-external (1.2.1)
archive-tar-minitar (0.5.1)
cgi_multipart_eof_fix (2.5.0)
daemons (1.0.9)
fastthread (1.0.1)
gem_plugin (0.2.3)
hoe (1.5.0)
mini_magick (1.2.3)
mongrel (1.1.3)
rails (1.2.3)
rake (0.8.1)
rmagick (2.2.2)
rubyforge (0.4.4)
root@ditto:/home/ditto#
Feb
19
2008
Temans,
Hari ini aku udah 3 hari pakai kubuntu. Setelah install ruby beserta paket2 pendukungnya, aku baru sadar kalau masih menggunakan rubygems versi 0.9.4. Akhirnya aku coba upgrade dengan “gem update –system“, hasilnya keluar error di konsole pas aku jalankan “gem” errornya kayak gini “/usr/bin/gem:23: uninitialized constant Gem::GemRunner (NameError)“. Nah setelah tanya-tanya ma om google, akhirnya ketemu deh jawabannya. Ringkasnya, buka “/usr/bin/gem” kemudian tambahkan “require ‘rubygems/gem_runner’” setelah script “require ‘rubygems’“. Setelah itu, jalankan “gem -v” maka akan muncul versi rubygem yang terbaru yang menandakan rubygem telah berhasil diupgrade. 
Feb
09
2008
Pada online.rb yang ke tiga ini, kami melanjutkan project yang sebelumnya. Kalo pertemuan minggu lalu cuma posting berita tentu saja berbeda dengan yang semalam, kami menambahkan untuk menampilkan data yang telah di entrykan dengan menggunakan paging. Juga ada penambahan live-search (pake ajax) kalo mas aziz bilang. Dengan adanya tambahan fasilitas ini, tentu saja kita perlu mengubah beberapa script yang pernah kita buat sebelumnya. Yang pertama adalah penambahan method pada controller berita, dengan menggunakan generate ulang controller berita.
[root@ditto berita]# ./script/generate controller berita index view
exists app/controllers/
exists app/helpers/
exists app/views/berita
exists test/functional/
overwrite app/controllers/berita_controller.rb? [Ynaqd] n
skip app/controllers/berita_controller.rb
identical test/functional/berita_controller_test.rb
identical app/helpers/berita_helper.rb
identical app/views/berita/index.rhtml
create app/views/berita/view.rhtml
[root@ditto berita]#
Command generate diatas diperlukan untuk create file view.rhtml dan penambahan method pada berita_controller.rb yang perubahannya bisa kita lihat seperti di bawah :
class BeritaController < ApplicationController
def index
redirect_to :action => “new”
end
def new
end
def view
condition = “judul LIKE ‘%#{params[:query]}%’”
@total = Berita.count(:conditions => condition)
@pages, @record = paginate(:beritas, :conditions => condition, :per_page => 10)
end
def proses_insert
if request.post?
@masuk=Berita.new(params[:masuk])
if @masuk.save
flash[:notice] = “udah masuk”
redirect_to :action => “new”
else
flash[:notice] = “nggak masuk”
render :action => ‘new’
end
end
end
end
Berikut beberapa penjelasan dari script di atas :
- condition = “judul LIKE ‘%#{params[:query]}%’”
condition adalah sebuah variabel yang menunjukkan kondisi yang dijalankan ketika query select berjalan (jika di mysql kita mengenalnya sebagai => where judul like ‘%params[:query]%’)
- @total = Berita.count(:conditions => condition)
@total adalah jumlah row dari hasil query
- @pages, @record = paginate(:beritas, :conditions => condition, :per_page => 10)
@record berfungsi untuk menghitung jumlah row hasil query dengan batas maksimal 10 record, sedangkan @pages diperoleh dari jumlah seluruh record setelah dibagi dengan 10 dan kemudian di tambah 1
Continue Reading »
Jan
26
2008
Ah, dah lama nggak posting nih. Berhubung semalam ada acara kumpul2 tim online yang bahas masalah howto-nya RubyOnRails(RoR) yang juga telah dihadiri seluruh tim dan mengingat banyaknya hal yang harus dicatat dari pertemuan semalam, jadi kepikiran nih untuk mendokumentasikannya ke sini. Oh, ya semalam yang jadi masternya di online.rb adalah Aziz Sensei
profil yang lebih lengkap beliau ada di http://www.akangaziz.com/
. Daripada ntar lupa lebih baik aku mulai aja.
Pertama kali yang dijelasin adalah beberapa perbedaan php-fusebox dengan ruby-rails, agak lupa2 inget juga sih
. Seingatku sih kata beliau, klo pake fusebox kita bisa buat program sesuai prosedur kita sendiri sedangkan pada rails malah sebaliknya, kita yang harus mengikuti prosedur2 yang ada di rails. Ada contoh kasus misalnya jika di php kita mau nampilkan suatu variabel dimana variabel tersebut belum didefinisikan, tidak akan muncul error. Hal sebaliknya akan terjadi jika kita menggunakan rails. Berikutnya di rails sensitifitasnya sangat tinggi, kita juga harus paham kapan kita menggunakan karakter “@” dengan benar.
Continue Reading »