Чтобы сделать его более понятным (изменено после первых двух комментариев ниже) ...
Совет контроллеров для индекса, проблема в том, что числовой 'region_id' отображается в представлении индекса вместо связанного 'региона-> name '.
function index() {
$this->Council->recursive = 0;
$this->set('councils', $this->paginate());
}
Советы Модель:
var $belongsTo = array(
'Region' => array(
'className' => 'Region',
'foreignKey' => 'region_id',
'conditions' => '',
'fields' => '',
'order' => ''
)
);
var $hasMany = array(
'Person' => array(
'className' => 'Person',
'foreignKey' => 'council_id',
'dependent' => false,
'conditions' => '',
'fields' => '',
'order' => '',
'limit' => '',
'offset' => '',
'exclusive' => '',
'finderQuery' => '',
'counterQuery' => ''
)
);
SQL
--
-- Table structure for table `councils`
--
CREATE TABLE IF NOT EXISTS `councils` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(40) DEFAULT NULL,
`email` varchar(40) NOT NULL,
`website` varchar(40) NOT NULL,
`websource` varchar(40) NOT NULL,
`region_id` int(11) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=17 ;
-- --------------------------------------------------------
--
-- Table structure for table `regions`
--
CREATE TABLE IF NOT EXISTS `regions` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(40) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=20 ;