CakePHP получить схему для списка таблиц - PullRequest
3 голосов
/ 29 января 2012

Есть ли в cakephp простой способ получить массив схем таблиц для списка конкретных таблиц? Например, я хочу схему таблицы для таблиц a, b, d, f и z; Кроме того, есть ли способ получить массив схем всех таблиц?

Ответы [ 3 ]

7 голосов
/ 30 января 2012

Получить источник данных, по:

$db =& ConnectionManager::getDataSource('default');

или

$db =& $this->User->getDataSource(); // or any other model 

Тогда вы можете получить все столы, позвонив по номеру:

$db->listSources()

И получить схему для таблицы, скажем "продукты"

$db->describe('products');

Однако передача строки в describe - это только в CakePHP 2.0 , для 1.3 требуется объект модели.

3 голосов
/ 11 февраля 2014

Попробуйте это

pr($this->Model->schema());
0 голосов
/ 22 ноября 2018

В любой табличной модели вы должны иметь доступ к текущему экземпляру:

$this->getConnection()->getSchemaCollection()->listTables();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...