07.16.09
Fusion Tutorial Series: Hello World
Step Dasar membuat aplikasi dengan drupal dan Fusion tanpa memakai resource database
Prerequisite: – Dapat membuat modul drupal sederhana
Skenario Tutorial Membuat module hello world yang mempunyai 4 url, yaitu: – helloworld/greeting – helloworld/greeting/morning – helloworld/greeting/noon – helloworld/greeting/night Modul ini tidak membutuhkan resource database sama sekali
Tujuan tutorial – Paham tentang struktur direktori dan file applikasi berbasis Fusion – Paham tentang flow applikasi – Dapat membuat file2 object dasar yang dibutuhkan oleh applikasi – Mengetahui tentang controller object
1. Membuat drupal module “helloworld ¶
1. Buat folder dengan struktur berikut di bawah sites/all/modules/ Case Sensitive!, folder Controller dan Model menggunakan huruf besar pada huruf pertama.
\_helloworld
\_classes
\_Controller
\_Model
\_assets
2. Buat file standar drupal yang diperlukan. Untuk contoh ini, buat file berikut: helloworld.info yang berisi:
; $id$ name = Hello World description = Sample application for Fusion demo package = test version = 1.0 ; isi dependencies dengan fusion agar modul fusion di load oleh drupal terlebih dahulu dependencies = fusion
helloworld.module yang berisi:
<?php
function helloworld_menu($may_cache) {
$items = array();
if($may_cache) {
$items[] = array(
'path' => 'helloworld/greeting',
'title' => 'Fusion Tutorial Package',
'callback' => 'fusion_dispatcher',
'access' => TRUE
);
$items[] = array(
'path' => 'helloworld/greeting/morning',
'title' => 'Good Morning',
'callback' => 'fusion_dispatcher',
'access' => TRUE
);
$items[] = array(
'path' => 'helloworld/greeting/noon',
'title' => 'Good Noon',
'callback' => 'fusion_dispatcher',
'access' => TRUE
);
$items[] = array(
'path' => 'helloworld/greeting/night',
'title' => 'Good Night',
'callback' => 'fusion_dispatcher',
'access' => TRUE
);
}
return $items;
}
- properti path pada menu drupal didasarkan pada konvensi “moduleName/controllerFileName/[action]“. Bila action pada path tidak ada, maka action = index – callback properti di set ke fusion_dispatcher. Fungsi fusion_dispatcher inilah yang nantinya akan menentukan controller class name dan action berdasarkan path
II Membuat applikasi Object Oriented ¶
1. Membuat controller Buat file Greeting.php di bawah folder Controller yang dibuat pada step I.1
<?php
class Helloworld_Controller_Greeting extends Fusion_Controller {
//tutorial ini belum membutuhkan database
//jadi set properti hasModel dengan false
var $hasModel = false;
//scaffolding ada di tutorial db handling.
//untuk sementara set scaffold dengan false
var $scaffold = false;
function index() {
//called from url 'helloword/greeting' or 'helloworld/greeting/index'
return 'Hello World. Im from Helloworld_Controller_Greeting::index';
}
function morning() {
//called from url 'helloworld/greeting/morning'
return 'Good Morning! im from Helloworld_Controller_Greeting::morning';
}
function noon() {
//called from url 'helloworld/greeting/noon'
return 'Good Noon! im from Helloworld_Controller_Greeting::noon';
}
function night() {
//called from url 'helloworld/greeting/night'
return 'Good Night! im from Helloworld_Controller_Greeting::night';
}
}
Selesai! Anda dapat mencoba hasilnya dengan mengaktifkan module hello world terlebih dahulu.





miko berkata,
Oktober 13, 2009 pada 12:14 am
mantab deh bro