Kohana ORM:根据外部表的值获取结果
taxonomies
-id
-name
taxonomy_type
-taxonomy_id
-type_id
我配置了两个模型:
class Model_Taxonomy{
protected $_has_many = array('types'=>array());
}
class Model_Taxonomy_Type{
protected $_belongs_to = array('taxonomy' => array());
}
*请注意,taxonomy_type 不是数据透视表。*
一个分类法可以关联多个类型。
然后,我想做的是获取属于给定类型 ID 的所有分类法。 这将是我要执行的 SQL 查询:
SELECT * FROM taxonomies, taxonomy_type WHERE taxonomy_type.type_id='X' AND taxonomies.id=taxonomy_type.taxonomy_id
我已经尝试过:
$taxonomies = ORM::factory('taxonomy')
->where('type_id','=',$type_id)
->find_all();
显然这不起作用,但我找不到有关如何执行此类查询的信息,所以我不知道。
taxonomies
-id
-name
taxonomy_type
-taxonomy_id
-type_id
I've configured two models:
class Model_Taxonomy{
protected $_has_many = array('types'=>array());
}
class Model_Taxonomy_Type{
protected $_belongs_to = array('taxonomy' => array());
}
*Please note that taxonomy_type is not a pivot table.*
A taxonomy can have multiple types associated.
Then, what I'm trying to do is get all taxonomies that belong to a given type id.
This is would be the SQL query I would execute:
SELECT * FROM taxonomies, taxonomy_type WHERE taxonomy_type.type_id='X' AND taxonomies.id=taxonomy_type.taxonomy_id
I've tried this:
$taxonomies = ORM::factory('taxonomy')
->where('type_id','=',$type_id)
->find_all();
Obviously this doesn't work, but I can't find info about how execute this kind of queries so I have no clue.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
并使用这样的一些:
And use some like that:
type_id
列是taxonomy_type 表的主键,对吗?因此,您有一个(唯一的)
taxonomy_type
记录,并且只有一个相关的taxonomy
对象(因为belongs_to
关系)。而不是你的:它将是
type_id
column is a PK of taxonomy_type table, am I right?So, you have one (unique)
taxonomy_type
record, and only one relatedtaxonomy
object (because ofbelongs_to
relationship). Instead of your:it will be a