8
我使用Kohana v3和ORM,我有两个模型,Model_A
和Model_B
通过一个数据透视表(有一个额外的列)的“has_many”相关。我可以使用add()
函数的第三个参数将数据保存在数据透视表中的该列中,但我无法弄清楚如何使用ORM读取该列。Kohana 3.0.x ORM:读取数据透视表中的其他列
任何想法?提前致谢。
我使用Kohana v3和ORM,我有两个模型,Model_A
和Model_B
通过一个数据透视表(有一个额外的列)的“has_many”相关。我可以使用add()
函数的第三个参数将数据保存在数据透视表中的该列中,但我无法弄清楚如何使用ORM读取该列。Kohana 3.0.x ORM:读取数据透视表中的其他列
任何想法?提前致谢。
如果您想要访问附加列,您需要创建一个基于该数据透视表的模型,假设我们将其命名为Model_A_B
。
class Model_A_B extends ORM {
protected $_belongs_to = array(
'A' => array(),
'B' => array()
);
}
然后,如果$a
是Model_A
和$b
一个实例是Model_B
一个实例,我们通过调用得到Model_A_B
实例:
$ab = ORM::factory('A_B', array('A_id' => $a, 'B_id' => $b));
if ($ab->loaded()) {
// do stuff
}
你展示来检索枢轴值,但你是否也可以展示一种方法来初始设置数据透视中的值? – Luke 2011-02-07 02:47:10
你会在哪里存储该模型? ... models/a/b.php? – Brenden 2012-01-26 18:24:52
@Brenden:是的,models/a/b.php – dusan 2012-07-20 15:10:33