HasMany-BelongsTo関係を持つ2つのデータベーステーブル、HomesとAssetsがあります。
最近まで、すべてのアセットは1つのホームに属していました。これは最近より複雑になりました。現在、一部のアセットは、ホームではなく不動産業者または地域に属しています。
今日、Homesテーブルに何十もの空白のエントリが表示されています。それらが、ホームに接続されていない新しいアセットが保存された結果であることはほぼ確実のようです。
AssetモデルのBelongsToHome関係が、これらの空白のエントリの作成を強制している可能性がありますか?(または、別の考えられる理由がありますか?)それが関係である場合、アセットの生成が新しい生成と連携して実行できるように、関係を変更する簡単な方法はありますか?ホームエントリー?
編集済み:モデル間の現在の関係は次のとおりです。
資産:
var $belongsTo = array(
'Home' =>array('className' => 'Home', 'foreignKey' => 'home_num'));
var $hasOne = array(
'Landmark' =>array('className' => 'Landmark', 'foreignKey' => 'asset_num',
'dependent' => true ));
家:
var $hasOne = array('HighlightImage' => array(
'className' => 'Asset',
'conditions' => 'highlight_image = TRUE',
'order' => '',
'foreignKey' => 'home_num',
'dependent' => false,
'exclusive' => false,
'finderQuery' => ''));
var $hasMany = array('Assets' => array(
'className' => 'Asset',
'conditions' => '',
'order' => '(Assets.title + 0 ) ASC',
'limit' => '200',
'foreignKey' => 'home_num',
'dependent' => false,
'exclusive' => false,
'finderQuery' => ''));
ランドマーク:
var $belongsTo = array(
'Assets' => array(
'className' => 'Asset',
'foreignKey' => 'asset_num'),
'Regions' =>array(
'className' => 'Region',
'foreignKey' => 'region_num'));
領域:
var $hasMany = array('Landmarks' => array(
'className' => 'Landmark',
'foreignKey' => 'region_num'));