> > On 5/19/07, Jerry Pasaribu < [EMAIL PROTECTED]> wrote: saya br belajar > ruby > Sampai skrg msh bingung utk membuat applikasi sederhana menggunakan ruby > on rails > utk instalasi aku pakai instanrails, dan sdh berhasil menciptakan folder > app web saya dng rails test_ruby > di bagian ini saya bingung struktur folder2nya, dan bgmn bila saya punya > template sendiri?
Kalau template AS html template, maka saya pikir sudah dijawab Arie di reply yang lain. Cuma yang saya tangkap, yang dimaksud dengan template ini "struktur folder" ya? Gampang sih sebetulnya. Dengan asumsi bahwa $RAILS_APP menujuk ke root foler aplikasi Rails anda: * Semua yang bersifat library tambahan, masukin ke $RAILS_APP/vendor * Konfigurasi ada di $RAILS_APP/config * Aplikasi business anda sendiri ada di app. Dimana: ** $RAILS_APP/controllers adalah "modul bisnis". ** $RAILS_APP/model adalah "Domain Model". ** $RAILS_APP/view adalah halaman web-nya. Modul bisnis adalah "aplikasi ini mau ngapain saja sih". Misalnya untuk aplikasi akuntansi, ada modul AP, AR, GL, Assets, Payroll, dst dst. Di console saya tinggal ngetik: $./script/generate controller AccountPayable $./script/generate controller AccountReceivable $./script/generate controller GeneralLedger Lalu coba anda amati file dan folder apa saja yang digenerate. Saya dulu juga bingung, jadinya struktur itu saya gambar treeviewnya di kertas: +app\ ++controllers\ +++general_ledger_controller.rb ++helpers\ +++general_ledger_helper.rb ++views\ +++general_ledger\ Perhatikan juga bagaimana Rails generator memisah nama controller dengan underscore. Gimana kalo ingin bikin modul didalam modul. Misalnya SubGL (buku besar pembantu) untuk Transaksi dengan bank. $./script/generate controller 'GeneralLedger/BankTransaction' Lalu anda amati lagi deh folder dan file apa saja yang digenerate. URL untuk akses: http://localhost:3000/general_ledger/bank_transaction Point yang ingin saya tunjukkan, dalam Rails mental model, kita memisah modul berdasarkan: 1. Tanggungjawab teknis. Class Responsibilty yang sering dijargonkan sebagai MVC. Didalam Rails, ini dikejewantahkan dalam app/models, app/controllers, app/views. 2. Kemudian modul bisnis juga kita bagi berdasarkan arsitektural MVC. Awalnya saya pikir ini nggak fleksibel. Tapi itu salah besar. Bisa saja kok kita nggak pakai kesepakatan template Rails dengan bikin folder sendiri untuk mengatasi problem yang memang nggak bisa diakomodir MVC. Untuk Email, WebService, feed delivery misalnya, saya bikin satu top folder di RAILS_APP, yang nantinya harus di route secara manual di /config/routes.rb. Jadi kembali ke pertanyaan semula, apa saya bisa punya template sendiri? Bisa donk. Tapi ada harga yang harus dibayar, yaitu dengan konfigurasi tambahan (dan itu nggak banyak2 amat). Lain kalau di Java Web devel, belum2 anda sudah dihadapkan pada banyak template. Mau pakai JavaBluePrints atau Apache? Belum lagi kesepakatan antar IDE juga ngeselin. Di Eclipse anda diberi folder WebContent, di IDEA anda dikasih /resources dst dst. Powerful sih, tapi seringnya kita nggak butuh yang powerful2 amat di semua kasus. ASP.NET gampang. Klak klik drag drop wizard this wizard that langsung jadi. Tapi untuk kustomisasi akan susah sekali karena kita nggak punya kontrol terhadap folder-folder itu. Untuk debugging di production server, akan sangat sangat susah sekali. Di PHP juga ngeselin (menurut saya). Sama sekali nggak ada 'convention' :D. Koneksi database mau ditaruh di index.php atau /inc/dabatabase.inc ya suka-suka programmernya. Doh. Cuma Rails yang fleksibel. Kalau tidak ada kebutuhan khusus, ya pakai saja template Rails. Kalau ada kebutuhan khusus baru pakai template sendiri. Segampang itu. Apakah ketika app saya hrs sdh tercipta dulu databasenya? > sekian dulu pertanyaannya, dan mohon petunjuk bagi para pakar ruby > thanks > -- http://andryshuzain.com [Non-text portions of this message have been removed]

