Archive for the ‘Ruby Programming’ Category

Sedikit Masalah script/console

Friday, August 8th, 2008

Semalem aku coba jalanin script/console

Tapi, malahan dapat error:

/usr/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/commands/console.rb:25:in `exec’: No such file or directory – irbĀ  -r irb/completion -r script/../config/../config/environment -r console_app -r console_with_helpers –simple-prompt (Errno::ENOENT)
from /usr/lib/ruby/gems/1.8/gems/rails-1.2.3/lib/commands/console.rb:25
from /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require’
from /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require’
from ./script/console:3

Akhirnya setelah googling sebentar ketemu penyelesaiannya dari sini. Lalu coba di console.

$ sudo apt-get install irb

Setelah proses selesai, aku coba lagi script/console semua masalah teratasi.

Trims to AsalMikir

Install RealPlayer, Opera, dan RMagick di Ubuntu Hardy Heron

Thursday, July 10th, 2008

Install RealPlayer

Download file RealPlayer10GOLD.bin di sini kemudian jalankan command berikut pada console:

chmod +x RealPlayer10GOLD.bin

sudo ./RealPlayer10GOLD.bin

Install Opera Browser

Jalankan perintah di bawah ini:

sudo apt-get install comix kopete gnochm dvdrip easytag kompozer \
             drapes subtitleeditor flashplugin-nonfree opera

Install RMagick

Ketika menjalankan

gem install rmagick

tampil error

checking for Magick-config... no
Can't install RMagick 2.5.0. Can't find Magick-config in [...]

yang harus dilakukan adalah install package libmagick9-dev

apt-get install libmagick9-dev

kemudian jalankan

gem install rmagick

(more…)

My Rubygems List

Wednesday, February 20th, 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#

Gagal Upgrade Rubygems, piye iki?

Tuesday, February 19th, 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. B-)

Third Online.rb

Saturday, February 9th, 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

(more…)

Simple Login With Rails1.2.3

Monday, February 4th, 2008

Setelah seharian googling, akhirnya aku dapat sedikit pencerahan mengenai sript login pake rails versi 1.2.3 meskipun masih tanpa enkripsi. Secara umum seperti berikut :

Pertama adalah Login Controller

class LoginController < ApplicationController

def index
end

def login
end

def cek_login

if request.post?
if @session["user"] = User.authenticate(params[:login][:name],params[:login][:password])
flash[:notice] = “Login Sukses!”
redirect_to :action => “index”
else
if params[:login][:name] == “”
flash[:notice] = “Username belum diisi.”
elsif params[:login][:password] == “”
flash[:notice] = “Password belum diisi”
else
flash[:notice] = “Username atau password salah”
end
redirect_to :action => “login”
end
end
end

end

(more…)

Second Online.rb

Saturday, February 2nd, 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 :D 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’) :-s .

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
(more…)

Depot Project With Rails 2.0.2 (1)

Wednesday, January 30th, 2008

Mumpung masih hangat nih, aku pengen bikin dokumentasi untuk depot project dengan menggunakan rails versi 2.0.2. Pastikan semua paket pendukung telah terinstall. Jika semua sudah siap, langsung saja kita mulai projectnya. Sekarang kita buat projectnya dulu dengan menggunakan perintah:

[root@otid htdocs]# rails -d mysql depot
create
create app/controllers
create app/helpers
create app/models
create app/views/layouts
create config/environments
create config/initializers
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
(more…)

First Online.rb

Saturday, January 26th, 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/ :thumbs . 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.

(more…)

How to: Install RubyOnRails in Fedora Core 7

Tuesday, January 22nd, 2008

Pada kesempatan kali ini, aku akan coba jelasin tentang cara instalasi RubyOnRails pada Fedora Core 7.

Install Ruby

Pertama kali yang kita perlukan adalah install paket yang berhubungan dengan ruby.

Jika kita telah memilih paket Ruby selama proses instalasi FC7, versi yang terinstal adalah versi yang lama. Versi lama tersebut misalnya versi 1.8.6-2 sedangkan pada pencarian dengan yum (yum search) sudah menunjukkan update hingga versi 1.8.6.36-3. Oleh karena itu lebih mudah jika kita install Ruby secara manual (seperti petunjuk di bawah) setelah instalasi FC7 selesai, jika yang kita inginkan adalah versi terakhir dari software tersebut.

Jika kita baru saja menyelesaikan instalasi FC7 atau sekarang adalah pertama kali kita menjalankan proses yum pada sistem, kita perlu menjalankan set up yum :

$ yum grouplist

Kemudian kita memerlukan akses sebagai root :

$ su -

Install semua paket yang berhubungan dengan Ruby :

# yum install ruby ruby-libs ruby-devel ruby-irb ruby-ri ruby-rdoc ruby-docs

Tergantung dari kebutuhan aplikasi, kita dapat menambahkan paket-paket berikut :

# yum install eruby eruby-libs eruby-devel bsf ruby-tcltk

(more…)