Yii : Bikin Link Antar View

salam semuanya. :)

sebelumnya, mohon dimaapkan dulu kalau pertanyaan saya sangat mendasar. saya basicnya java dan ini pertamakalinya di PHP dan Yii.

begini pertanyaannya, mungkin ga sih bikin link antar view pada satu view. saya baru selesai bikin blog berdasarkan contoh yg ada pada demo. cuman, feature link comment approve nya pengen saya pindahin di viewnya post langsung.




//controller aktif 	: PostController

//view 		        : index.php skn/post/index


<?php

$this->breadcrumbs=array(

	'Posts',

);


//ini ujicoba saya, tapi ga berhasil. saya mau ke index comment di viewnya PostController

$url_comment_index = Yii::app()->createUrl('skn/comment/index');


$this->menu=array(

	array('label'=>'Create Post','url'=>array('create')), // url ke skn/post/create

	array('label'=>'Manage Post','url'=>array('admin')), // url ke skn/post/admin 


        //di bawah ini pengennya ke "skn/comment/index", tapi URL yg dihasilkan salah

	array('label'=>'Approve Comments','url'=>array($url_comment_index)), 

);

jadi, caranya gimana. atau kalau ada saran lain juga boleh kok, rujukan bacaan juga boleh. tapi sukur2 dijawab langsung ;D




Yii Folder :

protected

------views

		------layouts

		------site

		------skn

			------comment

				------index.php

			------post

				------create.php

				------admin.php			

				------index.php



oh ya, satu lagi saya mau tanya, apa sih beda antara "->" dan "=>" di PHP?

gitu aja dulu, trims. :)

skn itu apaan, gan? maksudnya mo bikin skin?

eniwe,

  1. kalo ente cek ulang dokumentasinya view*1,

parameter yg dipasingkan saat render view itu relatif terhadap protected/views/controllerId

contoh nih:


$this->render("skn/post/index") ;//contoh1

$this->render("/skn/post/index") ; //contoh2

contoh 1 bakal nyari ke protected/views/post/skn/post/index.php

contoh 2 bakal nyari ke protected/views/skn/post/index.php

tapi abis ane cek ulang, pertanyaan ente, sepertinya lebih ke arah CMenu, kalo dari dokumentasinya*2. Items ini nerima parameter berupa url controller, bukan views. Jadi $url_comment_index mestinya diisi comments/index (Comentscontroller actionIndex), gak usah createUrl lagi karen otomatis dirender ama CMenunya.

Btw, format parameter url di yii yg umum array("controllerid/action", "param1"=>"value1", "param2"=>"val2"), tar jadinya http_//localhost/index.php?r=controllerid/action&param1=value1&param2=val2

  1. beda gan, satunya buat notasi class satunya buat array.

fungsi ‘->’ sama dengan notasi titik kalo mau akses attribut atau method di java.

contoh:


class Siswa {

  var $nama;

  public function getNilai() {

    //implementation

  }

}


$mhs1 = new Siswa;

$mhs1->nama = "Andre Sutanto";

echo $mhs1->getNilai();

kalo ‘=>’ buat deklarasi value pada array (biasanya associative), contoh:


mhs1 = array (

  'nama'=>null,

  'nilai'=>array(

    'matematika'=>10, 

    'ipa'=>11,  

    'inggris'=>25

  ),

);


//ngaksesnya

$mhs1['nama'] = 'Andri Sutanto';

foreach ($mhs1['nilai'] as $row) {

  foreach ($row as $mk=>$nilai)

    echo sprintf("Matakuliah %s mendapat %d<br/>", $mk, $nilai);

}

*1 yiiframework.com/doc/guide/1.1/en/basics.view

*2 yiiframework.com/doc/api/1.1/CMenu/#items-detail

makasih gan. untuk link antar viewnya sudah ketemu kok. skn itu bukan skin, tapi folder untuk nyimpan hasil generate biar ga kecampur dg yg bukan generate. skn itu inisal dari nama web yang akan digunakan.

makasih juga gan untuk penjelasan -> dan =>, baru ngeh saya hehehe