2010-05-24 3 views
1

Как загрузить модель? Я несколько раз пробовал, но он не работает.Как загрузить модель?

Мой код:

<?php 
class NotesController extends AppController { 
var $name='Notes'; 

var $helpers = array('Html','Form','Ajax','Javascript'); 
var $uses = array('note'); 
var $components = array('ModelLoader'); 

function index(){ 

    $this->ModelLoader->setController($this); 
    $result = $this->params['url']['obj']; 
    //print_r($result); 
     $ee=$this->ModelLoader->load('note'); 

     $pass = $this->note->search($result); 
+1

Почему все ваши вопросы заканчиваются ????? –

ответ

2

модель загружается автоматически и доступен в $this->ModelName функций контроллера. Какая модель для загрузки определяется по имени контроллера, NotesController автоматически загружает модель Note. Другие модели могут быть загружены через var $uses = array('Model');

class NotesController extends AppController { 

    var $name='Notes'; 
    var $helpers = array('Html','Form','Ajax','Javascript'); 

    function index() { 
     $this->Note->someaction(); // Accessing the model 
    } 
} 

Возможно, вам следует сначала следовать за the tutorial.

3

Если другая модель/s используются только один или два раза в пределах функций, не лучше использовать

$myModel = ClassRegistry::init('SomeModel'); 

Я слышал об этой модели погрузчика. но я прочитал сообщения, в которых некоторые рекомендуют не использовать его.

+1

Глядя на этот компонент ModelLoader, ему 3 года. Возможно, это было полезно в те дни, но это, безусловно, бессмыслица в последних версиях Cake. 'ClassRegistry :: init()' достаточно. – deceze