我有这个多对多关系:
这些是我的模型:
产品变体
class Productvariant extends DataMapper {
var $has_many = array('propertyvalue');
var $has_one = array('product');
}
适当的价值
class Propertyvalue extends DataMapper {
var $has_many = array('productvariant');
var $has_one = array('property');
}
控制器
$productvariant = new Productvariant(1);
$prodval = new Propertyvalue(1);
$productvariant->save($prodval);
信息
Unable to relate productvariant with propertyvalue.
我在文档中唯一能找到的是自我多对多关系,我似乎误读了他们希望你以这种方式使用模型的方式。
我是否也需要为额外的表定义一个模型?
===========================
更新
我为多对多关系建立了一个中间模型;
模型
class Productvariant_propertyvalues extends DataMapper {
var $table = '__productvariants_propertyvalues';
var $has_one = array('productvariant', 'propertyvalue');
}
控制器
$productvariant = new Productvariant(1);
$propval = new Propertyvalue(1);
$pv_vals = new Productvariant_propertyvalues();
$pv_vals->save(array($productvariant, $propval));
它现在可以工作,但是如果没有额外的,这不应该可行Model
吗?