laravel框架添加數據:
添加數據
laravel框架添加數據的方式我這裏使用的是model方式,此外還有一種是DB
因爲from提交數據,laravel框架需要在from提交中添加一個token,所以這裏接受數據也有好幾種方式
我使用的是new一個model,在model中定義了我需要的字段
還有一種就是我註釋的那裏啦.使用$request->except()直接將不需要的post數據排除掉
laravel上傳圖片也是非常的方便的,只需要一個store就可以了 另外圖片的存放地址我就不在這裏說了
有感興趣的同學可以去百度一下,很簡單的
返回成功值
這裏還有一個就是返回值的問題,
以前使用tp框架的時候有一個很方便的函數
$this->success()
laravel我暫時還沒有找到類似函數,現在只能這樣啦
reentu redirect()->with();
代碼如下:
public function base_banner_add(Request $request){
//判斷是否爲POST提交
if($request->isMethod('post')){
//排除不需要的post數據
// $request->except(['_token','_method']);
//接受並且上傳圖片
$file = $request->file('img')->store(date('Y-m-d'));
//接受所有數據
$data = $request->all();
//更改圖片url
$data['img'] = $file;
//實例化model
$banner = new Banner();
//添加數據
$list = $banner->create($data);
if($list != false && $list != null){
return redirect('admin/base_banner_add')->with('status','保存成功');
}else{
return redirect('admin/base_banner_add')->with('status','保存失敗');
}
}else{
//view顯示
return view('Admin/banner/base_banner_add');
}
}
接下來就是顯示數據了,
顯示數據
在添加數據的時候我使用的是model方式
那麼查詢數據也要使用model了
這裏就扯出來了 定義model的第二種用法
代碼如下:
public function base_banner(Banner $banner){
$data = $banner->get();
dump($data->toArray());
return view('Admin/banner/base_banner');
}
直接在函數中傳進去一個$request也是可以的
然後直接->get(); 就可以查詢出所有數據了
不過要注意的是 laravel這裏查詢出來的數據不是array數組 而是laravel自己定義的一個Collection
爲了以數組形式顯示出來,這裏使用了一個->toArray();來轉變爲數組