私は3つのデータベーステーブルnews
,news_n_types
、およびn_types
を持っています。cakephp - タグタイプの隣接レコード
n_types
テーブルには、さまざまなタイプのニュースタグがあります。
news_n_types
テーブルマップn_types
〜news
。
ニュース投稿は、さまざまなニュースタイプに属することができます。私は特定の新しいタイプのニュース投稿の隣人を見つけようとしています。
これまでのことを試してみると、すべての機能が動作しますが、そのタイプのニュースポストだけでなく、すべてのニュース投稿を検索します。
$this->News->bindModel(array('hasOne' => array('NewsNType')));
$neig = $this->News->find('neighbors', array(
'fields' => array('News.*')
));
私はニュースの種類をフィルタリングするための条件を追加する場合、私は、SQLエラー受け取る(SQLエラー:1054: 'where句' 内の不明な列 'NewsNType.n_type_idを')
$this->News->bindModel(array('hasOne' => array('NewsNType')));
$neig = $this->News->find('neighbors', array(
'fields' => array('News.*'),
'conditions' => array('NewsNType.n_type_id' => $typeID)
));
何午前私は間違っている?要求
あたり
アップデートは前を返すことはありませんように第1のクエリから返されたデータを見ていたら、それはあまりにも、作業することはできません。
アプリ/コントローラ/ news_controller.phpドキュメントよれば(ライン102)
Array
(
[prev] =>
[next] => Array
(
[News] => Array
(
[id] => 1
[title] => TEST 1
[date] => 1319935806
[body] => TEST 1
[excerpt] => TEST 1
)
[NType] => Array
(
[0] => Array
(
[id] => 1
[label] => Blog
[slug] => blog
[NewsNType] => Array
(
[id] => 25
[news_id] => 1
[n_type_id] => 1
)
)
[1] => Array
(
[id] => 2
[label] => Industry News
[slug] => industry_news
[NewsNType] => Array
(
[id] => 26
[news_id] => 1
[n_type_id] => 2
)
)
)
)
)
最初のクエリで返されたデータの例を投稿できますか? –
@David Gallagher私はさらに多くの情報を追加しました – Paramount
次はid 1を持っているので、私は前にあるとは思いません。私が心配しているのは、あなたの次のNewsNTypeがないという事実です。 –