資料新增成功也確定資料庫有新增的資料但顯示列表沒有顯示新增的那筆資料,請問程式碼哪裡寫錯了呢?
public function index()
{
$packages = ad_package::orderBy('pk_begin_date', 'desc')
->join('ad_package_item', 'ad_package.idad_package', '=', 'ad_package_item.idad_package')
->select('ad_package.idad_package', 'ad_package.create_time', 'pk_name', ad_package::raw("count(ad_package_item.idad_package) as count"), 'pk_price', 'pk_begin_date', 'pk_end_date', 'status')
->groupBy('ad_package_item.idad_package')
->paginate(10);
$data = [
'packages' => $packages,
];
return view('packages.index', $data);
}
資料庫有新增的資料
確認一下你新增的資料是「兩個 table 各一筆」
(ad_package 一筆、ad_package_item 一筆)
並且這兩筆的 idad_package 值相同
我只能說,又一個將orm當db操作的人出現了。
把 paginate 先暫時改成dd。先看組合出來的sql碼是不是你要的。
將其sql放進去phpmyadmin內試試能否拉的到資料。
先查sql來源跟資料來源是否是正確的。
另外,orm不是給你這樣用的。它會哭的。
多學一下關聯特性。能少用join就不要用。