Asked Dec 24th, 2018 10:45 AM 129 0 2
  • 129 0 2
0

Mọi người giúp em với , Em muốn lấy trong DB categories những thằng nào có tên course trong cột category_type. hiện tại em lấy tất cả category luôn.

Share
  • 129 0 2
public function searchAdvanced($params, $limit)
{
    $courseService = new CourseService;
    $query = $courseService->publish();

    if(isset($params['s_course']) && ! empty($params['s_course'])) {
        $query->where('title', 'like', "%{$params['s_course']}%");
    }
    if(isset($params['s_teacher']) && ! empty($params['s_teacher'])) {
        $query->whereHas('teacher', function ($query) use ($params) {
            $query->where('users.name', 'like', "%{$params['s_teacher']}%");
        });
    }
    if(isset($params['catid']) && ! empty($params['catid'])) {
        $query->whereHas('category', function ($query) use ($params) {
            $query->where('categories.id', $params['catid']);
        });
    }
    return $query->paginate($limit);
}

đây là DB categories của nó: https://prnt.sc/lywx5a

mọi người giúp em check điều kiền như thế nào để nó vào DB của thằng categories, vào cột category_type và lấy những thèn có tên 'course'.

Vũ Nguyễn @vunguyen10111995
Dec 25th, 2018 12:33 AM
Odasama K @thuyenhv2101
Dec 25th, 2018 1:16 AM

@vunguyen10111995 cảm ơn, thêm đk nó ko hiểu, còn cách nào khác ko?

0
| Reply
Share
Vũ Nguyễn @vunguyen10111995
Dec 25th, 2018 1:20 AM

@thuyenhv2101 bạn thêm như nào mà nó lại không hiểu vậy

0
| Reply
Share
Thang Tran Duc @thangtd90
Dec 25th, 2018 6:54 AM

@thuyenhv2101 ở trước câu lệnh return, bạn thêm đoạn $query->where('category_type', 'course') là được mà nhỉ 🤔

0
| Reply
Share

2 ANSWERS


Answered Dec 25th, 2018 1:04 AM
Accepted
+1

bạn thử thêm điều kiện

->where('category_type', 'course')

xem sao 😃

Share
Bùi Viết Hướng @viethuong2072000
Dec 31st, 2019 2:11 AM
Answered Dec 31st, 2019 2:12 AM
0

Mình không rõ là bạn đang đứng ở bảng nào, và từ khóa "course" được truyền vô như thế nào nhưng thấy đoạn cuối có whereHas category nên đoán là bạn không đứng ở categories. Nếu vậy thì bạn sẽ cần thêm một cái where nữa chẳng hạn:

if (!empty($params['keyword'])) { // $params['keyword'] = course
    $query->whereHas('category', function ($query) use ($params) {
        $query->where('category_type', $params['keyword']);
    });
}
Share