Запись 999 не может быть восстановлена - PullRequest
1 голос
/ 05 июля 2010

В моей примерной таблице базы данных у меня есть запись с идентификатором записи 999. У меня есть несколько строк кода для извлечения записи с идентификатором записи 999:

function viewing($sid){    
$this->Testing->post_id=$sid;
$this->set('posts', $this->Testing->read());
}

Но запись не может быть полученаиз сообщения с идентификатором 999, когда я изменил код:

function viewing($sid){ 
$sid=999;   
$this->Testing->post_id=$sid;
$this->set('posts', $this->Testing->read());
}

Не могли бы вы сказать, помогите мне, пожалуйста?

Ответы [ 3 ]

3 голосов
/ 05 июля 2010

Вы хотите установить атрибут model :: id, а не post_id.

$ this-> Site1-> ID = $ с.и.д.;

2 голосов
/ 05 июля 2010

Я думаю, что вы нарушаете условия и функции.Сначала вы устанавливаете id модели Site1.Затем вы пытаетесь прочитать запись из модели тестирования и устанавливаете post_id в записи.Правильный код должен выглядеть следующим образом:

function viewing($sid){ 
  $sid=999;   
  $this->Post->id=$sid;
  $this->set('post', $this->Post->read());
}

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

function viewing($sid){ 
  $sid=999;   
  $this->set('post', $this->Post->read(null, $sid));
}

Но при условии, что вы хотите получать сообщения, вероятно, фактический код должен выглядеть следующим образом:1007 *

function viewing($sid){ 
  $sid=999;   
  $this->set('post', $this->Posts->fund('all', array('conditions'=>array('post_id'=>$sid))));
}

или что-то подобное.Я думаю, что сначала вы должны взглянуть на CakePHP Cookbook и на CakePHP API

0 голосов
/ 05 июля 2010

Лучше использовать форму $this->Post->read(null, $sid)

Если вы хотите контролировать поиск связанных таблиц, используйте $this->MyModel->contain()

например.

$this->Post->contain('Testing') //(Post & Testing but not Site1)

или

$this->Post->contain('Testing','Site1.someValue') //(Post & Testing and Site1.someValue)

Я думаю, вам также следует внимательно перечитать разделы руководства по http://book.cakephp.org/view/78/Associations-Linking-Models-Together & http://book.cakephp.org/view/73/Retrieving-Your-Data

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...