site ecommerce ب laravel 7 الجزء الثاني

imadbelasri Laravel
LA

فهاد الجزء الثاني من site ecommerce ب laravel 7 غادي نزيدو ل model Category ول controller CategoryController ومن بعد غادي نزيدو login système ول HomeController. 


نظرة سريعة بالفيديو


1- إضافة model Category

غادي تزيد model Category فيه la relation مع les produits أيضا كنغير القيمة ديال البحث من id ل slug.

الكود ديال الملف هو :

                                                    
                                                        <?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class Category extends Model
{
    //
    protected $fillable = ["title", "slug"];

    public function getRouteKeyName()
    {
        return "slug";
    }

    public function products()
    {
        return $this->hasMany(Product::class);
    }
}
                                                    
                                                

2- إضافة ل controller CategoryController

من بعد زيد ل controller CategoryController لي غادي نخليهلك كتمرين زيد فيه les fonctions ديال الإضافة التعديل والحذف.

الكود ديال CategoryController هو :

                                                        
                                                            <?php

namespace App\Http\Controllers;

use App\Category;
use Illuminate\Http\Request;

class CategoryController 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)
    {
        //
    }

    /**
     * Display the specified resource.
     *
     * @param  \App\Category  $category
     * @return \Illuminate\Http\Response
     */
    public function show(Category $category)
    {
        //
    }

    /**
     * Show the form for editing the specified resource.
     *
     * @param  \App\Category  $category
     * @return \Illuminate\Http\Response
     */
    public function edit(Category $category)
    {
        //
    }

    /**
     * Update the specified resource in storage.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \App\Category  $category
     * @return \Illuminate\Http\Response
     */
    public function update(Request $request, Category $category)
    {
        //
    }

    /**
     * Remove the specified resource from storage.
     *
     * @param  \App\Category  $category
     * @return \Illuminate\Http\Response
     */
    public function destroy(Category $category)
    {
        //
    }
}
                                                        
                                                    

3- إضافة login & logout وتعديل الملف HomeController

منبعد باش نزيد login و logout زيد هاد les commandes ف cmd : 

composer require laravel/ui:^2.4

php artisan ui vue --auth

دبا من بعد متزاد غادي تمشي ل HomeController وتزيد عليه تعديلات باش ن afficher les produits فل home page.

الكود ديال HomeController بعد التعديل هو :

                                                        
                                                            <?php

namespace App\Http\Controllers;

use App\Category;
use App\Product;
use Illuminate\Http\Request;

class HomeController extends Controller
{
    /**
     * Create a new controller instance.
     *
     * @return void
     */
    public function __construct()
    {
        // $this->middleware('auth');
    }

    /**
     * Show products.
     *
     * @return \Illuminate\Contracts\Support\Renderable
     */
    public function index()
    {
        return view('home')->with([
            "products" => Product::latest()->paginate(10),
            "categories" => Category::has("products")->get(),
        ]);
    }

    /**
     * Show products by category.
     *
     * @return \Illuminate\Contracts\Support\Renderable
     */
    public function getProductByCategory(Category $category)
    {
        $products = $category->products()->paginate(10);

        return view('home')->with([
            "products" => $products,
            "categories" => Category::has("products")->get(),
        ]);
    }
}
                                                        
                                                    

دروس ذات صلة

LA

site ecommerce ب laravel 7 الجزء الأول

فهاد ال projet الجديد غادي نقادو site ecommerce ب laravel 7 غادي نزيدو ل paiement ب paypa...


LA

site ecommerce ب laravel 7 الجزء الثالت

فهاد الجزء الثالت من site ecommerce ب laravel 7 غادي نشوفوا كيفاش نزيدو login & logout بل email...


LA

site ecommerce ب laravel 7 الجزء الرابع

فهاد الجزء الرابع من site ecommerce ب laravel 7 غادي نكملوا login و logout وغادي نزيدو تعديلات على L...


LA

site ecommerce ب laravel 7 الجزء الخامس

فهاد الجزء الخامس من site ecommerce ب laravel 7 غادي نشوفوا كيفاش نزيدو ل panier ومن بعد غادي نعرضوا...


LA

site ecommerce ب laravel 7 الجزء السادس

فهاد الجزء السادس من site ecommerce ب laravel 7 غادي نزيدو les routes ديالنا باش داكشي لي زدنا فالجز...


LA

site ecommerce ب laravel 7 الجزء السابع

فهاد الجزء السابع من site ecommerce ب laravel غادي نزيدو ل order model ول controller من بعد غادي نشو...


LA

site ecommerce ب laravel 7 الجزء الثامن

فهاد الجزء الثامن من site ecommerce ب laravel غادي نكملوا الجزء الخاص بالأدمن غادي نزيدو ل factory و...


LA

site ecommerce ب laravel 7 الجزء التاسع

فهاد الجزء التاسع من site ecommerce ب laravel غادي نزيدو la page ديال login ديال الأدمن ومنبعد غادي...


LA

site ecommerce ب laravel 7 الجزء العاشر

فهاد الجزء العاشر من site ecommerce ب laravel غادي نزيدو les pages الخاصين ب les produits أولا الصفح...