Ada 2 isu penting di bidang web development akhir-akhir ini, yaitu Ruby on Rails (RoR) dan Ajax, aku sudah terbiasa dengan RoR karena memang sudah menjadi pekerjaan sehari-hari ku, sedangkan Ajax ?, aku Cuma mendengar kabar burungnya dari internet atau ebook saja
Nah tadi pagi aku coba cicipi kue Ajax ini, dan enak bangeeeeeeet, walaupun belum sepenuhnya tau enaknya kenapa ?, nah yg cukup membuat aku kaget adalah RoR mempunyai Framework dan Templating system tersendiri untuk menghandle Ajax, Frameworknya berisikan Helper yang merupakan abstraksi dari beberapa Javascript Framework handal seperti prototype & script.aculo.us, sedangkan templating systemnya bernama RJS (Ruby-generated JavaScript)
Nah dari pada bertele-tele aku ngejelasin, silahkan cicipi deh kode “Ajax on Rails” berikut ini (Asumsi, Ruby & RoR sudah terinstall, jika belum silahkan baca ini)
1. buat Rails Skeleton , ketik di console/terminal “rails latihanajax”
2. buat controller, caranya masuk ke directory latihanajax terus ketik “ruby script/generate controller latihan1”
3. ketik kode form berikut ini di Textmate, (kalo ndak punya textmate pake emacs/notepad ajah
)
<%= form_remote_tag :url=>{:action=>’salam’} %><!—ini akan meng-invoke salam.rjs –>
Enter your name <%= text_field_tag :name %>
<%= submit_tag "Ucapkan Salam" %>
<%= end_form_tag %>
<h2 id="salam" style="display: none "></h2>
simpan di app/views/latihan1/form.rhtml
4. buat template rjs-nya
page[:salam].hide
page[:salam].update "Assalamu’alaikum wr wb, " + params[:name]
page[:salam].visual_effect :grow
page.select("form").first.reset
simpan di app/view/latihan1/salam.rjs
5. buat layout untuk meng-include script.aculo.us & prototype
<html>
<header>
<%= javascript_include_tag :defaults %> <!—ini untuk menginclude Ajax Framework –>
</header>
<body>
<%= yield %>
</body>
</html>
simpan di app/view/layouts/standar.rhtml
6. panggil layout tersebut di controller, buka app/controllers/latihan1_controller.rb, ketik kode berikut
class Latihan1Controller < ApplicationController
layout "standar"
end
7. masuk ke directory latihanajax lalu nyalakan server, dengan mengetik “ruby script/server”
8. buka Mozilla Firefox, lalu masukan url berikut localhost:3000/latihan1/form/
9. silahkan dinikmati, nah gampang kan bikin kue Ajax di loyang RoR ? ^_^
btw, ini html yang dihasilkan oleh kode di atas, dan terus terang saja aku sangat suka dengan visual efek yang dihasilkannya ^_^
<html>
<header>
<script src="/javascripts/prototype.js?1150155006" type="text/javascript"></script>
<script src="/javascripts/effects.js?1150155006" type="text/javascript"></script>
<script src="/javascripts/dragdrop.js?1150155006" type="text/javascript"></script>
<script src="/javascripts/controls.js?1150155006" type="text/javascript"></script>
<script src="/javascripts/application.js?1150155006" type="text/javascript"></script>
</header>
<body>
<form action="/latihan1/salam" method="post" onsubmit="new Ajax.Request(’/latihan1/salam’, {asynchronous:true, evalScripts:true, parameters:Form.serialize(this)}); return false;">
Enter your name <input id="name" name="name" type="text" />
<input name="commit" type="submit" value="Ucapkan Salam" />
</form>
<h2 id="salam" style="display: none "></h2>
</body>
</html>
referensi : Ajax on Rails by Scott Raymond
*note : kalo ada error, hubungi saya, siapa tau saya mbisa membantu
Belajar WordPress
June 22, 2007 6:22 pm
Wah, aku malah ndak ngerti dua-duanya