<p<?php
namespace AppHttpControllers;
use AppModelsProduct;
use IlluminateHttpRequest;
class ProductController extends Controller
{ public function index() { $products = Product::all(); return view(‘products.index’, compact(‘products’)); }
public function create() { return view(‘products.create’); }
public function store(Request $request) { $request->validate([ ‘name’ => ‘required’, ‘description’ => ‘required’, ‘price’ => ‘required|numeric’, ‘quantity’ => ‘required|integer’, ]);
Product::create($request->all());
return redirect()->route(‘products.index’) ->with(‘success’, ‘Product created successfully.’); }
public function show(Product $product) { return view(‘products.show’, compact(‘product’)); }
public function edit(Product $product) { return view(‘products.edit’, compact(‘product’)); }
public function update(Request $request, Product $product) { $request->validate([ ‘name’ => ‘required’, ‘description’ => ‘required’, ‘price’ => ‘required|numeric’, ‘quantity’ => ‘required|integer’, ]);
$product->update($request->all());
return redirect()->route(‘products.index’) ->with(‘success’, ‘Product updated successfully’); }
public function destroy(Product $product) { $product->delete();
return redirect()->route(‘products.index’) ->with(‘success’, ‘Product deleted successfully’); }
}
