0

'Texts'コントローラーのビュー関数に$id以外の変数を渡そうとしています。

public function view($postid = NULL) {
        $this->Text->postid = $postid;
        $this->set('text', $this->Text->read());
    }

私は何が間違っているのですか?

4

4 に答える 4

1

そこで何をしているの?主キーで読み取り専用を使用できます-通常はid

$this->Text->id = $postid;
于 2012-04-14T23:14:17.387 に答える
0

理解した:

public function view($postid = NULL) { 
$post = $this->Text->find('first', array('conditions' => 
                                          array('Text.postid'=>$postid))); 
$this->set('text', $post); 
}
于 2012-04-15T23:57:48.677 に答える
0

モデルの$primaryKeyプロパティはに設定されていますか?そうでない場合は、希望どおりに機能しません。で、これをクラスに追加します。Text'postid'$this->Text->read()app/Model/Text.php

public $primaryKey = 'postid';

主キーを変更したくない場合は、次のこともできます(ただし、おそらく変更する必要があります)。

$text = $this->Text->find('first', array(
    'conditions' => array('postid' => $postid),
));
$this->set('text', $text);

また、ビューに次のようなものを追加して、変数に実際に何が含まれているかを確認してください。

<pre><?php var_dump($text); ?></pre>

それはあなたに何が起こっているのかについてのより良い考えを与えるかもしれません。

最後に、関連するドキュメントをいくつか示します。

于 2012-04-14T23:53:16.200 に答える
0

ビュー機能は次のようにカスタマイズできます。

public function view($name = NULL) {
    $record = $this->Text->findByName($name);        
    $this->set('text', $record);
}

これnameが文字列です。nameフィールドはデータベースに存在する必要があります。$ recordの内容はdebugging.debug($ record)で確認できます。

于 2012-04-15T05:16:39.527 に答える