رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
نمایش اطلاعات یک جدول با توجه به relation
#1
سلام دوستان
خسته نباشید
یه جدول  student هست و یه جدول exam که از طریق کلید خارجی به جدول student وصل شده
حالا می خوام اون رکورد هایی از جدول student برگردونده بشن که یه سری امتحان دارن
یعنی اینکه relation خالی ندارن
از active record استفاده کردم. نمی تونم شرط رو چطوری بنویسم
توی مدل student یه relation به نام  getExams هم دارم

ممنون می شم راهنمایی کنید.
no pain, no gain
پاسخ
تشکر شده توسط:
#2
این کد رو توی مدل Student بگذارین:
public $examCount;

public function getExams()
{
    return $this->hasMany(Exam::classNam(), ['student_id' => 'id']);
}
public function getExamCount()
{
    return $this->getExams()->count();
}

حالا توی کدتون این شکلی دانشجوهایی که امتحان داشتن رو پیدا کنید:
$students = Students::find()->with('exams', 'examCount')->where('examCount>0')->all();
پاسخ
تشکر شده توسط:




کاربران در حال بازدید این موضوع: 1 مهمان