join - Yii2. 一列重命名的多个innerJoinWith
问题描述
试图加入关系表。一切正常,除了一件事。结果我有两个相似的列名。但我不知道如何从查询中的相关“商店”表中重命名一列。
$query = StoreItem::find()->innerJoinWith('stores', true)->innerJoinWith('users', true);
$dataProvider = new ActiveDataProvider([
'query' => $query,
]);
感谢任何帮助。
解决方案
您可以尝试像这样使用别名:
$query = StoreItem::find()
->alias('si')
->innerJoinWith('stores', true)->innerJoinWith('users', true);
或在您的模型中定义别名,如下所示:
public function getUserOrdersItems()
{
return $this->hasMany(UserOrdersItems::className(), ['user_orders_id' => 'id'])->alias('orderItems');
}
这只是一个例子。您必须使用您的 3 个模型。
推荐阅读
- r - dplyr 中的 Distinct 不起作用(有时)
- javascript - 重新加载后从子 iframe 自动调用 js 函数不起作用
- node.js - Mongoose 查找查询未执行
- c - C中的整数到字符串itox函数
- react-native - 在 react native 中使用动态样式
- yii2 - Yii2 高级 - 在模块中启用漂亮的 URL
- angularjs - 访问 XMLHttpRequest 在
- oop - 我的对象是否应该负责随机化自己的内容?
- css - CSS Preloader 在 IE11 上运行不流畅
- wordpress - Wordpress Multisite - 域内托管的目录