Laravel 教學Chapter4_簡單的CRUD_資料新增

接續上一篇,雖然相隔有點久遠,

這次以產品做為範例,在view上面建立新增、編輯、刪除等連結,

product
在view底下建立一個creat.blade.php

並在controller裡面指向這個view

public function create()
{
    return  view(“product.create”);
}
查看我們現有的route
route
 在create頁面新增html form,
form的action指向product的store function,並加入csrf驗證
代碼如下
@extends(“layouts.app”)
@section(“content”)
<div class=”container”>
<form action=”{{ route(‘product.store’) }}” method=”POST”>
@csrf
<div class=”form-group row”>
<label for=”productId”class=”col-sm-1 col-form-label”>編號</label>
<div class=”col-sm-4″>
<input type=”text”class=”form-control” id=”productId”” name=”productId” value=””>
</div>
</div>
<div class=”form-group row”>
<label for=”barcode” class=”col-sm-1 col-form-label”>條碼</label>
<div class=”col-sm-4″>
<input type=”text” class=”form-control” id=”barcode” name=”barcode” value=””>
</div>
</div>
<div class=”form-group row”>
<label for=”size” class=”col-sm-1 col-form-label”>尺寸</label>
<div class=”col-sm-4″>
<input type=”text” class=”form-control” id=”size” name=”size” value=””>
</div>
</div>
<div class=”form-group row”>
<label for=”color”” class=”col-sm-1 col-form-label”>顏色</label>
<div class=”col-sm-4″>
<input type=”text”class=”form-control” id=”color” name=”color” value=””>
</div>
</div>
<div class=”form-group row”>
<label for=”price”class=”col-sm-1 col-form-label”>價錢</label>
<div class=”col-sm-4″>
<input type=”text”class=”form-control” id=”price”” name=”price” value=””>
</div>
</div>
<div class=”form-group row”>
<div class=”col-sm-10″>
<input type=”submit” class=”btn btn-primary” value=”送出”>
</div>
</div>
</form>
</div>
@endsection
可以看到畫面如下
form
在controller的store function中實作
public function store(Request $request)

{

      $a=$request->only(‘productId’, ‘barcode’,’size’,’color’,’price’);
      dd($a);
}
可以看到送出的值有接收過來了
request

 

透過ORM 的語法新增到DB

$product=new Product;
$product->ProductID=$request->input(‘productId’);
$product->BarCode=$request->input(‘barcode’);
$product->Size=$request->input(‘size’);
$product->Color=$request->input(‘color’);
$product->Price=$request->input(‘price’);
$product->save();

return redirect(‘product’);

可以看到資料新增到資料庫中完成。
result