2016-12-24 30 views
0

我已經寫了一個原始查詢表單,我想在一個大列表中顯示。所以,我想用分頁。但對於原始查詢->paginate(5);如何在Laravel中爲原始查詢分頁?

這裏是樣品原始查詢我用:

public function managementReport(){ 
     $managementReport = DB::select(DB::raw("SELECT members.name as name, 
       members.card_no as card_no, members.joining_date as joining_date, 
       salary_terms.designation as designation, salary_terms.main_salary as main_salary, 
       salary_terms.basic as basic,salary_terms.house_rent as house_rent, 
       salary_terms.medical as medical,salary_terms.conveyance as conveyance, 
       salary_terms.food as food,monthly_payrolls.days_on_month as days_on_month, 
       monthly_payrolls.working_days as working_days, 
       ((salary_terms.basic*monthly_payrolls.leave_without_pay)/monthly_payrolls.working_days) as absent, 
       (salary_terms.main_salary - ((salary_terms.basic*monthly_payrolls.leave_without_pay)/monthly_payrolls.working_days)) 
       as gross_pay,monthly_payrolls.deduction,(salary_terms.main_salary -(((salary_terms.basic*monthly_payrolls.leave_without_pay)/monthly_payrolls.working_days)+monthly_payrolls.deduction)) 
       as net_pay FROM members INNER JOIN salary_terms on members.id = salary_terms.member_id INNER JOIN 
       monthly_payrolls on salary_terms.id = monthly_payrolls.salary_term_id 
       WHERE salary_terms.is_management='1'")); 
       return view("Report::management",compact('managementReport')); 
     } 

那麼,如何實現paginate()在laravel原始查詢?

+0

@marcin Nabialek對不起,我找不到任何有用的解決方案,你已經標記爲重複的鏈接。 – Hola

+0

如果您使用原始查詢,則需要手動分頁數據,因此您需要在查詢中使用'offset'手動獲取數據庫中所需的數據,並將這些數據傳入分頁程序 –

回答