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 »
Feb
02
2008
Hmm…
pertemuan semalem unik banget, karena ada saat-saat di mana kami dari tim online di haruskan buat 1 project untuk posting berita. Nah, yang jadi tukang ketik semalem orangnya juga unik dari Jogja lagi
, kadang-kadang lebih sering keluar dari jalur tapi malah menyegarkan suasana
dan tentu saja kerja keras kami nggak sia-sia. Dalam waktu 30 menit project rails versi 1.2.3 untuk buat posting berita aja udah kelar (itu belum dikurangi 20 menit yang di pake untuk ‘guyon ngalor-ngidulnya’)
.
Langsung aja dah aku catat di sini, tapi ingat untuk kali ini kita pake rails versi 1.2.3.
[root@otid htdocs]# rails berita
create
create app/controllers
create app/helpers
create app/models
create app/views/layouts
create config/environments
create components
create db
create doc
create lib
create lib/tasks
create log
create public/images
create public/javascripts
create public/stylesheets
create script/performance
create script/process
create test/fixtures
create test/functional
create test/integration
create test/mocks/development
create test/mocks/test
create test/unit
create vendor
create vendor/plugins
create tmp/sessions
create tmp/sockets
create tmp/cache
create tmp/pids
create Rakefile
create README
create app/controllers/application.rb
create app/helpers/application_helper.rb
create test/test_helper.rb
create config/database.yml
create config/routes.rb
create public/.htaccess
create config/boot.rb
create config/environment.rb
create config/environments/production.rb
create config/environments/development.rb
create config/environments/test.rb
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 »