我有两个表,ProductGroup和ProductGroupTranslation连接在一起。
在ProductGroup中我有id,在翻译表中我有标题。
现在我想获得所有ProductGroups:
$categories = ProductGroup::find(array(
"product_group_id IS NULL",
"order" => "id DESC"
) );
这有效,我可以通过$categories->productgrouptranslation->getTitle();
但是如果我只提取列,我该如何访问连接表:
$categories = ProductGroup::find(array(
"columns" => "id",
"product_group_id IS NULL",
"order" => "id DESC"
) );
答案 0 :(得分:1)
这是您正在使用的技术的限制。如果您指定要从中检索数据的列,则这些列是您将有权访问的唯一列。
如果你问“我需要指定哪些列只能从连接的结果集中获取id和title”,那么我怀疑答案是将一列列传递给columns
列名以表名开头:
$categories = ProductGroup::find(array(
"columns" => "ProductGroup.id,ProductGroupTranslation.title",
"product_group_id IS NULL",
"order" => "id DESC"
) );
将上述表名替换为实际的表名。