Berkenalan dengan Path Alias di Yii
May 15th, 2012, Written by: | Categories: Programming, Yii Framework

Pada pemograman Yii, terkadang Anda akan melihat sebuah sintaks yang menentukan bagaimana suatu file diakses. Dan bentuknya adalah nama-nama folder yang dipisah titik, seperti sintaks koding di bawah ini:

Yii::import('application.components.Controller');

Koding di dalam parameter yang tertulis “application.components.Controller” inilah yang disebut path alias. Kegunaan path alias adalah untuk mempermudah penulisan sekaligus juga mempercantik koding secara keseluruhan. Bagi yang terbiasa dengan pemograman Java pastinya akan sangat familiar dengan bentuk path alias Yii.

Path alias biasanya merepresentasikan jalur file atau direktori. Misalnya, “application.components.Controller” itu berarti meminta Yii untuk mengakses webroot/protected/components/Controller.php. Nah di sini, kita bisa langsung menarik kesimpulan bahwa “application” pada “application.components.Controller” merujuk ke webroot/protected. Selain “application” ada lagi beberapa yang sudah ditetapkan oleh Yii seperti:

  • system: yang merujuk ke direktori framework Yii sendiri.
  • zii: yang merujuk ke direktori framework/zii yang ada di dalam framework Yii.
  • webroot: yang merujuk ke direktori tempat index.php bernaung.
  • ext: yang merujuk ke direktori webroot/protected/extension.

Path Alias Pada Module

Jika Anda berada di dalam sebuah module, maka Anda bisa langsung menulis nama module tersebut. Misalnya, Anda memiliki module yang terletak di webroot/protected/modules/administration. Nah, Anda cukup menulis :

  • administration.components.* : Jika ingin mengakses seluruh file di  webroot/protected/modules/administration/components
  • administration.views.default.form : Jika ingin mengakses seluruh file di webroot/protected/modules/administration/views/default/form.php

Perhatikanlah betapa sederhananya untuk mengakses folder dengan menggunakan path alias.

Penggunaan Path Alias

Umumnya path alias akan sering terpakai di pemanggilan widget. Misalnya Anda ingin memanggil widget yang terletak di dalam folder webroot/protected/components/MyWidget.php, Anda pasti menulis :

$this->widget('application.components.MyWidget');

Atau masih ingatkah Anda bagaimana membuat sebuah CGridView? Ya! CGridView juga diakses dengan path alias.

$this->widget('zii.widgets.grid.CGridView', array(
'id'=>'mahasiswa-grid',
...

Selain itu, biasanya path alias juga sering dipakai untuk sintaks Yii::import(), seperti pada contoh pertama yang ditunjukkan penulis.

Path Alias Buatan Sendiri

Selain definisi path alias yang sudah disinggung di atas, sebetulnya kita bisa saja membuat path alias sendiri. Misalnya, Anda merasa harus sering mengakses folder webroot/protected/components, maka Anda bisa saja membuat path alias baru dengan menggunakan sintaks Yii::setPathOfAlias(). Umumnya kita mengeset sintaks ini di baris pertama pada protected/config/main.php, supaya bisa langsung dipakai.

<?php
//di baris pertama langsung tulis path alias sendiri
//contoh di bawah kita membuat path alias baru bernama "components"
Yii::setPathOfAlias('components', 'protected/components/');

//ini baru mulai isi dari config
return array(
'basePath'=>dirname(__FILE__).DIRECTORY_SEPARATOR.'..',
'name'=>'Latihan',

More about: , ,

3 Responses to “Berkenalan dengan Path Alias di Yii”

  1. Fahmi Auliya

    Ajiib tutorialnya..
    Begini kan jadi enak path application-nya, bisa dimodif lebih sederhana atau jadi yang lebih mudah diingat..
    Thanks tutorialnya..

    Reply
  2. Rattan Furniture

    saya bingung kalo kita buat alias dengan semisal ini:

    ‘aliases’=>array(
    ‘bootstrap’=> realpath(__DIR__.’/../extensions/yiibooster/’),
    ),

    apa bisa?

    tanpa mengaktifkan kode (tidak uncomment) Yii::setPathOfAlias

    Reply
    • Garry

      Coding ini ditulis di mana? Saya tidak bisa memastikannya. Saya rasa bisa dicoba langsung akan kelihatan. Dan jangan lupa di-update di comment yah ;)

      Reply

Leave a Reply to Fahmi Auliya

Click here to cancel reply.