PDA

View Full Version : join در yii2



A.ardalan far
چهارشنبه 13 خرداد 1394, 01:32 صبح
سلام.
میخاستم بین کلید اصلی و خارجی join کنم
در یک مدل این تابع رو دارم


public function getRUser()
{
return $this->hasOne(DpnUsers::tableName(), ['u_id' => 'r_userid']);
}
و در مدل دیگه این رو


public function getUsersroles()
{
return $this->hasMany(DpnUsersrole::tableName(),['r_userid' => 'u_id']);
}


چطور باید join کرد با ActiveRecord

under22
چهارشنبه 13 خرداد 1394, 09:54 صبح
سلام.
میخاستم بین کلید اصلی و خارجی join کنم
در یک مدل این تابع رو دارم


public function getRUser()
{
return $this->hasOne(DpnUsers::tableName(), ['u_id' => 'r_userid']);
}
و در مدل دیگه این رو


public function getUsersroles()
{
return $this->hasMany(DpnUsersrole::tableName(),['r_userid' => 'u_id']);
}


چطور باید join کرد با ActiveRecord

با تابع joinWith میتونی join بزنی و همه چی اونو مشخص کنی مثل نوعش و ....


$customers = Customer::find()
->joinWith('rUser')
->where(['order.status' => Order::STATUS_ACTIVE])
->all();

با تابع with هم میتونی Join بزنی فقط کنترلی رو مشخصات join نداری
چند تا راه دیگه هم داره پیشنهاد میکنم لینک زیر ر وبخونی
http://www.yiiframework.com/doc-2.0/guide-db-active-record.html

A.ardalan far
چهارشنبه 13 خرداد 1394, 22:25 عصر
با تابع joinWith میتونی join بزنی و همه چی اونو مشخص کنی مثل نوعش و ....


$customers = Customer::find()
->joinWith('rUser')
->where(['order.status' => Order::STATUS_ACTIVE])
->all();

با تابع with هم میتونی Join بزنی فقط کنترلی رو مشخصات join نداری
چند تا راه دیگه هم داره پیشنهاد میکنم لینک زیر ر وبخونی
http://www.yiiframework.com/doc-2.0/guide-db-active-record.html

ممنون
به جای DpnUsers::tableName باید تیبل مدلی که این تابع درونش هست بدم یا مدلی که باهاش در ارتباط هست؟