У меня есть две таблицы базы данных, дома и активы, с отношением HasMany-BelongsTo.
До недавнего времени каждый актив принадлежал одному дому. В последнее время это стало более сложным: теперь некоторые активы принадлежат риэлтору или региону, а не дому.
Сегодня я видел десятки пустых записей, появляющихся в моей таблице Домов. Кажется почти уверенным, что они являются результатом спасения новых активов, которые не связаны с домом.
Вероятно ли, что отношения BelongsTo Home в модели активов вынуждают создавать эти пустые записи? (Или есть другая вероятная причина?) Если это отношения, есть ли быстрый способ изменить отношения, чтобы генерация актива могла, но не обязательно, идти рука об руку с генерацией нового Домашняя запись?
РЕДАКТИРОВАНИЕ : Вот текущие отношения между моделями:
Asset:
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'));