モデルCakePHP - どのように私は舌twisterのすべての言語を見つけることができますか?
<?php
class Tonguetwister extends AppModel {
var $name = 'Tonguetwister';
//The Associations below have been created with all possible keys, those that are not needed can be removed
var $belongsTo = array(
'language' => array(
'className' => 'language',
'foreignKey' => 'language_alias',
'dependent'=> true
)
);
}
?>
コントローラ
<?php
class TonguetwistersController extends AppController {
var $name = 'Tonguetwisters';
var $uses = array('Tonguetwister', 'Language');
function index() {
$this->set('languages', $this->Language->find('all'));
}
function view($id = null) {
if (!$id) {
$this->Session->setFlash(__('Invalid tonguetwister', true));
$this->redirect(array('action' => 'index'));
}
$this->set('tonguetwisters', $this->Tonguetwister->find('all', array('conditions' => array('language_alias' => $id))));
}
}
?>
私は早口言葉を持っているインデックスの言語を()見てみたいです。これどうやってするの?
ありがとうございました!しかし、これは私にエラーをもたらします: 警告:SQLエラー:1054: 'where節' [CORE/cake/libs/model/datasources/dbo_source.php、行684]の 'Language.alias'列が不明です。表 "languages.alias"は "tonguetwisters.language_alias"に関連しています。 – Dennis
'language_alias'を' language.alias'にタイプするか、またはリレーション定義に問題があります。 – JJJ
はい、私のモデルの大文字の誤植でした。ありがとう!それは完全に動作します。 – Dennis