我在数据库中有以下三个表:
Products
********
id
title
artist_id
Artists
*******
id
profile
rating
person_id
People
******
id
first_name
last_name
每位艺术家都可以拥有很多产品。
每位艺术家只有一个人。
每件产品只有一位艺术家。
在这三个表的模型之间建立正确的关联是什么?
答案 0 :(得分:1)
产品艺术家:一对多 艺术家的产品:一对一 艺术家与人:一对一
例如,Artist
模型:
<?php
class Artist extends AppModel {
var $name = 'Artist';
var $belongsTo = array(
'Person' => array(
'className' => 'Person',
'foreignKey' => 'person_id'
)
);
var $hasMany = array(
'Product' => array(
'className' => 'Product',
'foreignKey' => 'product_id'
)
);
}
?>
<强> DOC 强>
答案 1 :(得分:0)
我猜它是这样的:
产品有艺术家:
<?php
class Product extends AppModel {
var $hasOne = array('Artist');
}
艺术家属于一个人,拥有许多产品。
<?php
class Artist extends AppModel {
var $name = 'Artist';
var $belongsTo = array('Person');
var $hasMany = array('Product');
}
人有艺术家。
<?php
class Person extends AppModel {
var $hasOne = array('Artist');
}