让我们说我有一个产品。该产品可以有多个文本。在我的查询中,我只想获得一个特定的文本。我不想得到所有的文本,然后循环到ckeck。那可能吗?我尝试了几件事:
$nameArticle = Product::find([
'id',
'pld.product_name as productName'
])
->from('product p')
->joinWith('productLanguageData.language')
->where(['p.id' => $value['product']])
->andWhere(['pl.iso_language' => 'es']) //query, please give me only spanish text.
->one();
这将返回包含所有语言的产品。
如何使此查询有效?
public function getLanguage()
{
return $this->hasOne(ProductLanguage::className(), ['id' => 'language_id'])
->from(['pl' => ProductLanguage::tableName()]);
}