Yii Framework Forum: Memuat Modelnya Module dalam Widget - Yii Framework Forum

Jump to content

Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

Memuat Modelnya Module dalam Widget Rate Topic: -----

#1 User is offline   __agus 

  • Standard Member
  • PipPip
  • Yii
  • Group: Members
  • Posts: 166
  • Joined: 22-April 10
  • Location:Yogyakarta, Indonesia

Posted 03 August 2010 - 04:40 AM

Hi, kenapa sy kok tidak bisa memuat modelnya module didalam componentnya module. Seperti ini struktur foldernya:
/modules/YMOnline
        /YMOnline/components/WidYMOnline.php        
        /YMOnline/components/views/ymonline.php
        /YMOnline/controllers/DefaultController.php
        /YMOnline/models/YMOnline.php
        /YMOnline/views/default/index.php          


sy memuat model YMOnline.php dari WidYMOnline.php. Mengaksesnya seperti biasa
$model = YMOnline::model()->findAll();
, Tetapi aksesnya didalam widget module. Kemudian dari halaman site/index, sy mengakses widget WidYMOnline.
$this->('application.modules.YMOnline.components.WidYMOnline');


errornya seperti ini:
PHP Error
Deskripsi

include(YMOnline.php) [<a href='function.include'>function.include</a>]: failed to open stream: No such file or directory
File Sumber

C:\xampplite\htdocs\yii\framework\YiiBase.php(338)

00326:      * @param string class name
00327:      * @return boolean whether the class has been loaded successfully
00328:      */
00329:     public static function autoload($className)
00330:     {
00331:         // use include so that the error PHP file may appear
00332:         if(isset(self::$_coreClasses[$className]))
00333:             include(YII_PATH.self::$_coreClasses[$className]);
00334:         else if(isset(self::$_classes[$className]))
00335:             include(self::$_classes[$className]);
00336:         else
00337:         {
00338: include($className.'.php');
00339:             return class_exists($className,false) || interface_exists($className,false);
00340:         }
00341:         return true;
00342:     }


Ada yang pernah ngalami g?. Terus ada saran agar tidak error?.
makasih.
0

#2 User is offline   __agus 

  • Standard Member
  • PipPip
  • Yii
  • Group: Members
  • Posts: 166
  • Joined: 22-April 10
  • Location:Yogyakarta, Indonesia

Posted 03 August 2010 - 09:27 PM

Sy sudah menemukan solusi sementara. Kalo temen-temen ada cara yang lebih baik, akan sangat membantu. Berikut ini scriptnya:
//Pada class modul, setImport path-nya sy tulis lengkap.
    $this->setImport(array(
        'application.modules.YMOnline.models.*',
        'application.modules.YMOnline.components.*',
    ));

// Kemudian pada widget sy tambahkan juga setImport pada init.
<?php
class WidYMOnline extends CWidget
{

    public function init() {
        Yii::app()->setImport(
            array('YMOnline.models.*')
	    );
    }
..

;D
0

#3 User is offline   awik 

  • Newbie
  • Yii
  • Group: Members
  • Posts: 17
  • Joined: 16-December 08
  • Location:Yogyakarta

Posted 11 January 2013 - 12:49 AM

View Post__agus, on 03 August 2010 - 09:27 PM, said:

Sy sudah menemukan solusi sementara. Kalo temen-temen ada cara yang lebih baik, akan sangat membantu. Berikut ini scriptnya:
//Pada class modul, setImport path-nya sy tulis lengkap.
    $this->setImport(array(
        'application.modules.YMOnline.models.*',
        'application.modules.YMOnline.components.*',
    ));

// Kemudian pada widget sy tambahkan juga setImport pada init.
<?php
class WidYMOnline extends CWidget
{

    public function init() {
        Yii::app()->setImport(
            array('YMOnline.models.*')
	    );
    }
..

;D


mau nanya broo maaf newbi
fungsi function init()
gunanya buat apa yaa.. tengkyu
0

#4 User is offline   __agus 

  • Standard Member
  • PipPip
  • Yii
  • Group: Members
  • Posts: 166
  • Joined: 22-April 10
  • Location:Yogyakarta, Indonesia

Posted 11 January 2013 - 11:50 AM

fungsi init() adalah inisial dari objek, dalam fungsi ini kita bisa memasukan prosedure2/fungsi kita yang akan dijalan pd saat fungsi init() dijalankan. misalnya pada widget, fungsi init() akan dijalankan sebelum widget merender view. Contoh init pada widget
class ContohWidget extends CWidget
{
    public function init() {
        //lakukan sesuatu sebelum widget dijalankan. misalnya mendaftarkan js
    }

    public function run() {
        $this->render('contoh_widget');
    }
}

Contoh lain seperti pada controller, fungsi init() hampir sama.

View Postawik, on 11 January 2013 - 12:49 AM, said:

mau nanya broo maaf newbi
fungsi function init()
gunanya buat apa yaa.. tengkyu

0

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users