Я сомневаюсь, что у меня было несколько таблиц с именем client1, client2, client3 и т. Д. Мне нужно получить данные каждого клиента в одном контроллере без создания какой-либо модели/контроллера для каждой таблицы. Может ли кто-нибудь объяснить, как получить эти значения.Cakephp: Как получить данные таблицы без создания моделей/контроллеров?
1
A
ответ
5
Вы можете использовать динамические модели
приложение/client_model.php
<?php
class ClientModel extends Model {
var $name = 'Client';
var $alias = 'Client';
function __construct($table) {
$this->useTable = $table;
parent::__construct();
}
}
?>
и использовать, как это для client1 таблицы
App::import('model','Client');
$client = new ClientModel('client1');
$client->find('all');
+0
Я закончил использовать это - у меня есть контроллер/модель EmailForms, и мне нужен контроллер и модель EmailFormSubmissions, и по разным страшным причинам я не мог написать их как две отдельные модели/контроллеры - у меня была только одна модель/контроллер двойная нагрузка. Таким образом, я навязываю новый EmailForm следующим образом: $ emailFormSubmission = new EmailForm ('email_form_submissions'); – Kluny
-1
модель представляет данные, и контроллер (обычно) Fetches это данные. Теперь, почему вы не хотите использовать их? В противном случае нет смысла использовать структуру MVC, например CakePHP, если вы не хотите придерживаться принципов MVC. –