我有动态创建的表格,我想访问它 通过模型。由于这些表是动态创建的,我没有 他们的模型.php文件。表格的创建符合 Cake的命名约定。我尝试使用loadModel()来加载它们 蛋糕仍然抱怨桌子丢失了。
有解决方案吗?
谢谢。
答案 0 :(得分:4)
撰写本文时,使用CakePHP 2.1.2
在您的控制器中添加App::uses('AppModel', 'Model');
。然后实例化模型
$RemoteHeader = new AppModel(array(
'table' => 'SOP10100',
'ds' => 'external',
'name' => 'RemoteHeader',
'alias' => 'InvoiceHeader',
'primaryKey' => 'id',
'hasMany' => array(
'InvoiceDetail' => array(
'foreignKey' => 'SOPNUMBE',
'counterCache' => false
))));
然后使用您需要的任何Model参数获取数据:
$data = $RemoteHeader->find('all', array(
'fields' => array(
'SOPNUMBE',
'CUSTNAME',
'DUEDATE',
'DOCDATE',
'DOCAMNT',
'SUBTOTAL')));
答案 1 :(得分:0)
使用类
创建/app/models/dynamic.php
class Dynamic extends AppModel {
var $name = 'Dynamic'
var $useTable = null;
}
在你的控制器的行动中
$this->Dynamic->useTable = 'newly-created-table';
没有经过测试,请告诉我是否有问题