كيفاش تزيد المعلومات فقاعدة البيانات ب laravel & postgres الجزء الثاني


فهاد الجزء الثاني من كيفاش تزيد المعلومات فقاعدة البيانات ب laravel & postgres غادي نكملو الملفات لي بقاو ولي غادي تكون فيهم الفورم لي غادي تمكن من إضافة منتوج لقاعدة البيانات وأيضا الصفحة الرئيسية لي غادي يتعرضوا فيها المنتوجات كاملين.

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

1- الملف includes/add-product-modal.blade.php

فالمجلد views زيد مجلد جديد includes فيه زيد ملف جديد سميه add-product-modal.blade.php فيه غادي تكون الفورم لي غادي تمكن المستخدم من إضافة produit لقاعدة البيانات ولي كتصيفط المعلومات للfonction store لي كاينة ف ProductsController الكود ديال الملف هو :

                                <div class="modal fade" id="addProduct" tabindex="-1" role="dialog">
  <div class="modal-dialog" role="document">
    <div class="modal-content">
      <div class="modal-header">
        <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
        <h4 class="modal-title text-info">Ajouter un produit</h4>
      </div>
      <div class="modal-body">
         <form action="{{route('products.store')}}" method="post">
         {{csrf_field()}}
            <div class="form-group">
                <label for="">Libellé*</label>
                <input type="text" class="form-control" name="title" id="title" required=""/>
            </div>
            <div class="form-group">
                <label for="">Prix*</label>
                <input type="number" class="form-control" name="price" id="price" required=""/>
            </div>
            <div class="form-group">
                <button class="btn btn-success" type="submit">Valider</button>
            </div>
         </form>
      </div>
      <div class="modal-footer">
        <button type="button" class="btn btn-default" data-dismiss="modal">Annuler</button>
      </div>
    </div><!-- /.modal-content -->
  </div><!-- /.modal-dialog -->
</div><!-- /.modal -->
                            

2- welcome.blade.php

دائما فالمجلد views كاين ملف سميتو welcome فيه غادي تكون المنتوجات ديالنا لي استقبلناهم من fonction index لي كاينة ف ProductsController وكنخدم ب foreach باش كنعرض المعلومات وكندير include للملف add-product-modal.blade لي غادي يكون عبارة عن modal بالإضافة للرابط لي غادي يمكن من حدف منتوج من قاعدة البيانات الكود ديال الملف هو :


                                <!doctype html>
<html lang="{{ config('app.locale') }}">
    <head>
        <meta charset="utf-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <title>Store Postgres</title>
        <!-- Fonts -->
        <link rel="stylesheet" href="{{URL::to('/css/bootstrap.css')}}">
        <link href="https://fonts.googleapis.com/css?family=Raleway:100,600" rel="stylesheet" type="text/css">
        </style>
    </head>
    <body>
        <div class="container">
            <div class="row" style="padding:10px;">
                <div class="col-md-6 col-md-offset-3">
                    @include('includes.error')
                    <div class="panel panel-default">
                        <h2 class="text-primary" style="padding:10px;">Tous les produits</h2>
                        <hr>
                        <div class="form-group" style="padding:10px;">
                            <button class="btn btn-primary"  data-toggle="modal" data-target="#addProduct">Ajouter</button>
                            @include('includes.add-product-modal')
                        </div>
                        <ul class="list-group">
                            @foreach($products as $product)
                                <li class="list-group-item">
                                    <strong class="text-info">{{$product->title}}</strong><span class="text-danger">{{$product->price}} DH</span>
                                    <span class="pull-right"><a href="{{route('products.delete',$product->id)}}" class="btn btn-danger btn-xs">Supprimer</a></span>
                                </li>
                            @endforeach
                        </ul>
                    </div>
                </div>
            </div>
        </div>
        <script src="{{URL::to('js/jquery.js')}}"></script>
        <script src="{{URL::to('js/bootstrap.min.js')}}"></script>
    </body>
</html>

                            

3- الملف errors.blade.php

دائما فالمجلد includes فيه زيد ملف جديد سميه errors.blade.php هادا هو الملف لي غادي يعرض رسائل النجاح والفشل الكود ديال الملف هو :

                                @if(Session::get('success'))
   <div class="alert alert-success">{{Session('success')}}</div>
@elseif(Session::get('fail'))
    <div class="alert alert-danger">{{Session::get('fail')}}</div>
@endif
                            

4- الملف web.php

فالمجلد routes كاين الملف web.php هادا الملف ديال les routes ديالنا ولي فيهم محددين les urls الكود ديال الملف هو :

                                    <?php

/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
|
*/

Route::get('/',[
    'uses'=>'ProductsController@index',
    'as'=>'home'
]);
Route::post('/store',[
    'uses'=>'ProductsController@store',
    'as'=>'products.store'
]);
Route::get('/product/{id}/delete',[
    'uses'=>'ProductsController@destroy',
    'as'=>'products.delete'
]);
                                


إشترك في قناتنا على اليوتيوب

بحث في الموقع


إشترك للتوصل بالجديد