購物車增加數量欄位
用指令: php artisan make:migration add_quantity_to_cart_items
修改程式碼:更新跟復原都要
程式碼
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
class AddQuantityToCartItems extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::table('cart_items', function (Blueprint $table) {
$table ->integer('quantity') ->after('cart_id');
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::table('cart_items', function (Blueprint $table) {
$table ->dropColumn('quantity')
});
}
}
更新沒顯示先手動加入
terminal執行: php artisan migrate
加入 CartItemController
用指令php artisan make:controller CartItemController --resource
加入 路由Route::resource('cart_items', 'CartItemController');
打開加入
use Illuminate\Support\Facades\DB;
修改程式碼
程式碼內容
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
class CartItemController extends Controller
{
/**
* Display a listing of the resource.
*
* @return \Illuminate\Http\Response
*/
public function index()
{
//
}
/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function create()
{
//
}
/**
* Store a newly created resource in storage.
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
public function store(Request $request)
{
$form = $request->all();
DB::table('cart_items')->insert(['cart_id' => $form['cart_id'],
'product_id' => $form['product_id'],
'quantity' => $form['quantity'],
'created_at' => now(),
'updated_at' => now()]);
return response(true);
}
在terminal要啟動php artisan serve
用POSTMAN的POST測試localhost:8000/cart_items
在BODY選x-www-..
到資料表看有增加
把顯示1改成顯示true
改程式碼return response()->json(true);
程式碼:
public function store(Request $request)
{
$form = $request->all();
DB::table('cart_items')->insert(['cart_id' => $form['cart_id'],
'product_id' => $form['product_id'],
'quantity' => $form['quantity'],
'created_at' => now(),
'updated_at' => now()]);
//return response(true);
return response()->json(true);
}
```
用POSTMAN的POST顯示

更新的程式碼:只有更新數量/時間

public function update(Request $request, $id)
{
$form = $request->all();
DB::table('cart_items')->where('id',$id)
->update([
'quantity' => $form['quantity'],
'updated_at' => now()]);
//return response(true);
return response()->json(true);
}
POSTMAN測試localhost:8000/cart_items/1?quantity=5

資料表查看

刪除 程式碼:

public function destroy($id)
{
DB::table('cart_items')->where('id',$id)
->delete();
return response()->json(true);
}
}

資料表看

大家明天見~
沒有顯示圖片的部分再麻煩大家貼上網址查看~