MÔ TẢ CHI TIẾT:
HÌNH ẢNH DEMO
Nguồn: sharecode.vn
Mình thấy cách làm này không khả quan, không có sự liên kết giữa các bảng, phải lưu thông tin trùng ở khá nhiều bảng. Cơ sở dữ liệu này chưa chuẩn cũng như chưa phù hợp.
1. as là một cách để đặt tên cho Route. as là tên của route còn prefix mới là url nhé!
Route::get('/',['as'=>'MyRoute',function(){ return view('index'); }]);
2. Sử dụng paginate mà laravel tạo sẵn để phân trang
Mình đã có hướng dẫn phân trang trong Laravel rồi các bạn xem bài viết nhé.
public function index() { $data = ArtistMod::paginate(10); // Lay het du lieu return view('artists.index')->with('v_artist',$data); }
3. Truyền biến sang view
with('tenBienQuaView', $tenBienController) // nhưng tui thích dùng cách dưới này hơn with( compact('tenBien1', 'tenBien2') ) //cách này thì tenBien vừa là tên biến qua view vừa là tên biến của controller
4. Sử dụng các hàm tạo sẵn của Eloquent cho model sẽ xử lý nhanh hơn khi CRUD theo id. Nên kết hợp với Resource. Mình đã có chia sẻ về CRUD resource rồi.
Route::resource('artists','ArtistCtrl');
public function index() { $data = ArtistMod::all(); // Lay het du lieu return view('artists.insert')->with('v_artist',$data); }
public function store(Request $request) { // Lay gia tri tu form $input = $request->all(); // Luu tat ca cac input tu form vao database ArtistMod::create($input); // Hien thi lai Form - Bao thanh cong return redirect()->back()->with('insert_task_message','Insert sucessfully'); }
public function show($id) { $data = ArtistMod::findOrFail($id); return view('artists.show')->with('v_artist',$data); }
public function update(Request $request, $id) { $artist = ArtistMod::findOrFail($id); $input = $request->all(); $artist->fill($input)->save(); return redirect()->back()->with('update_task_message','Update sucessfully'); }
public function destroy($id) { $data = ArtistMod::findOrFail($id); $data->delete(); return redirect()->back()->with('delete_task_message','Delete sucessfully'); }
Trên đây là những gì tôi tìm hiểu, nghiên cứu về project âm nhạc này, và tui đã chia sẻ nó trong bài viết. Cảm ơn các bạn đã xem bài viết, có thắc mắc gì cứ để lại bình luận phía dưới nhé!