cakephp как найти все названия моделей

У меня есть работа по импорту файла excel и сохранению данных в базе данных через cakephp, проблема в том, что это приложение позволяет пользователю выбирать таблицу, которую он хочет использовать для сохранения данных из файла excel, поэтому мне нужно перечислить все модели имя, у меня есть поиск через Google, как получить все названия моделей, но я не могу его найти. Я просто могу получить все имена таблиц, но этого недостаточно. Я должен знать все название модели, пожалуйста, помогите мне...

Я могу получить все имя поля, используя этот код:

$this->loadModel('Person');
        $fieldsArray=$this->Person->find('all');
        $fieldsArray=Set::extract('/0/Person',$fieldsArray);
        $fieldNames=array_keys($fieldsArray[0]['Person']);
        debug($fieldNames);

но, как видите, мне нужно знать название модели, я не могу решить эту проблему, пожалуйста, помогите мне..

С наилучшими пожеланиями...


person user1290932    schedule 25.03.2012    source источник


Ответы (2)


Ты имеешь ввиду:

$allModelNames = Configure::listObjects('model');
pr($allModelNames);

Примечание. Это работает только для CakePHP1.x Для CakePHP2.x используйте вместо этого App::objects().

person Sudhir Bastakoti    schedule 25.03.2012
comment
Просто обратите внимание, что теперь это устарело в пользу App::objects api.cakephp .org/1.3/class-App.html#_objects - person Colin Fukai; 22.03.2013
comment
@Sudhir, не могли бы вы добавить примечание, что ваш ответ работает только для CakePHP < 1.3 - person powtac; 26.10.2013

person    schedule
comment
но из-за ленивой загрузки будут перечислены только уже загруженные модели, а не все - person 3k-; 02.09.2015