CakePHP3“包含”不检索“属于”

8zzbczxx  于 2022-11-11  发布在  PHP
关注(0)|答案(1)|浏览(169)

一个用户有多个产品,每个产品都有一个品牌。
在“产品”表中,我有一个“brand_id”列。
目前,当我执行debug($user)时,没有连接。
我想在Brands和Products表(product.brand_id = brand.id)之间建立一个联接。如何解决这个问题?
(抱歉我的英语)

//Controller Users
    $users = TableRegistry::getTableLocator()->get('users');
    $user = $users->find('all')
            ->contain(['Products' => ['conditions' => ['id' => 25]]])
            ->first();
    debug($user); 

//Model Users
public function initialize(array $config)
{
    $this->hasMany('products');
}

//model Products
public function initialize(array $config)
{
    $this->belongsTo('brands');
}
ubof19bj

ubof19bj1#

简单:

->contain([
   'Products' => ['conditions' => ['id' => 25]],
   'Products.Brands', // Add product brands
])

阅读更多信息:book.cakephp.org/4/en/orm/query-builder.html#loading-associations

相关问题