Я хочу написать собственный запрос в cakephp 1.3.17
Я пишу следующее в функции в контроллере Users
$arrayTemp =array();
$arrayTemp = $this->Users->query('SELECT * FROM ht_users Where id=$id');
$this->set('post',$arrayTemp);
pr($post);
но он получает следующую ошибку на странице
Error: Call to a member function query() on a non-object
File: D:\xamp\htdocs\devworks\app\Controller\UsersController.php
Line: 1478
Строка: 1478 означает, что это указывает -> $ arrayTemp = $ this-> Users-> query (‘SELECT * FROM ht_users Где id = $ id’);
как я могу выполнить обычный запрос здесь, пожалуйста, помогите
Как называется ваша модель пользователь поэтому вам нужно написать пользовательский запрос, как показано ниже.
$arrayTemp =array();
$id='1'; // For example. $id is whatever id you're receiving here
$arrayTemp = $this->User->query("SELECT * FROM ht_users Where id = '$id'");
$this->set('post',$arrayTemp);
Теперь вы можете pr ($ post) в вашем файле function.ctp. Если этот код написан в функции index (), попробуйте распечатать в index.ctp аналогичным образом.
Пожалуйста, попробуйте с приведенным выше кодом, дайте мне знать, если еще какие-либо проблемы
Согласно конвенциям Cakephp,
Model class name are singular, this should be the database table name but in singular format.
Итак, в вашем случае это должно быть пользователь
А затем используйте приведенный ниже код
$arrayTemp =array();
$arrayTemp = $this->User->query('SELECT * FROM ht_users Where id=$id');
$this->set('post',$arrayTemp);