Привет, я никогда не сталкивался с такой проблемой. Пожалуйста, объясните мне, когда я сделал неправильно. Я попытался сгенерировать 2 модели, которые имеют отношение, но они не вошли в модели. Вот структура БД.
CREATE TABLE IF NOT EXISTS `property` (
`property_id` int(11) NOT NULL AUTO_INCREMENT,
`ListPrice` int(11) NOT NULL,
`ListingURL` text NOT NULL,
`ProviderName` varchar(255) NOT NULL,
`ProviderURL` text NOT NULL,
`modificationTimestamp` text NOT NULL,
PRIMARY KEY (`property_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
CREATE TABLE IF NOT EXISTS `location` (
`loc_id` int(11) NOT NULL AUTO_INCREMENT,
`property_id` int(11) NOT NULL,
`latitude` varchar(255) NOT NULL DEFAULT '0.0000',
`longitude` varchar(255) NOT NULL DEFAULT '0.0000',
PRIMARY KEY (`loc_id`),
KEY `property_id` (`property_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1;
--
-- Constraints for table `location`
--
ALTER TABLE `location`
ADD CONSTRAINT `location_ibfk_1` FOREIGN KEY (`property_id`)
REFERENCES `property` (`property_id`) ON DELETE CASCADE ON UPDATE CASCADE;
В модели нет отношения:
public function relations()
{
// NOTE: you may need to adjust the relation name and the related
// class name for the relations automatically generated below.
return array(
);
}
'property' => array(self::BELONGS_TO, 'Property', 'property_id'),
. - person Jerome   schedule 16.10.2014MySQL Workbench
- person Oscar Reyes   schedule 17.10.2014CREATE TABLE
, а не изменяю таблицу постфактум, но я действительно не вижу в этом проблемы. Если gii не видит отношения, это может быть связано с тем, что отношение не создано должным образом в MySQL. Если вы использовали клиент с графическим интерфейсом, чтобы попытаться добавить строки вручную, возникнут ли ошибки при создании записи местоположения, если вы указали идентификатор свойства, которого нет в таблице свойств? - person Jerome   schedule 17.10.2014