through
我使用数据透视表将我的模型设置为多对多。但是,我想在数据透视表中添加一些额外的数据。
在过去 ( kohana 3.0
) 我能够使用 add 方法提供额外的数据
$obj->add('alias', $related, array('extra'=>'data'))
但是在 Kohana 3.3 中,该add
方法似乎没有为额外数据提供第三个参数,而且我似乎无法在保存后找到如何执行此操作,添加更多数据然后重新保存。
这不再受支持,因为Kohana 3.1
.
他们删除它的原因(来源:http ://dev.kohanaframework.org/issues/3754 ):
我们决定删除它,因为如果您需要将数据放入数据透视表中,最好使用直通模型。直接在 add() 方法中插入数据会绕过通常在模型中的验证和过滤。如果您需要直通表中的数据,请使用模型。我们不会改变这一点。
您现在必须为数据透视表创建一个模型并将附加信息放入该模型中。
然后,has_many "through" (n:n)
您应该使用has_many (1:n)
两个表与数据透视表的关系而不是使用关系。
我希望这回答了你的问题。