私はテーブルを持っていて、それは、、、またはのいずれかにfiles
属しています。たぶん将来的にはもっとあるでしょう。post
article
notion
paragrah
どのような関係を使用することをお勧めしますか?複数のHABTMテーブル、または複数の列(、、post_id
... aticle_id
)?
または多分2列parent_alias
とparent_id
?しかし、CakePHPでこれを簡単に操作するにはどうすればよいですか?
提案をありがとう!
私はテーブルを持っていて、それは、、、またはのいずれかにfiles
属しています。たぶん将来的にはもっとあるでしょう。post
article
notion
paragrah
どのような関係を使用することをお勧めしますか?複数のHABTMテーブル、または複数の列(、、post_id
... aticle_id
)?
または多分2列parent_alias
とparent_id
?しかし、CakePHPでこれを簡単に操作するにはどうすればよいですか?
提案をありがとう!
このケースはhasOneを使用して解決できます
ファイルテーブルに1つのタイプ列(varchar)と1つのforegin_key(整数)を追加するだけです
このモデルを投稿、記事にバインドします...hasOneリレーションを使用するモデル
投稿用
$hasOne = array('File' => array('foreignKey'=>'foreign_key','conditions'=>array('type'=>'post')))
記事で
$hasOne = array('File' => array('foreignKey'=>'foreign_key','conditions'=>array('type'=>'article')))
関連付けを保存するときに、必ず「タイプ」列を更新してください
私たちはあなたのために選ぶことはできません。それはあなたのデータに依存します。
問題は、ファイルが複数の投稿に属することができるかどうかです。
はいの場合、HABTMが必要になります。
BelongsToがない場合は十分です。