CRUD Application ب laravel & mongodb الجزء الأول

CRUD Application ب laravel & mongodb الجزء الأول


فهاد ال projet الجديد من سلسلة laravel غادي نشوفوا كيفاش نقادو واحد ل CRUD application لي كتمكن كيف شفنا فالفيديو من إضافة des articles لقاعدة البيانات تعديلها وحذفها وهاد المرة غادي نخدموا كيف قلنا ب mongodb لي هو نظام تسسير قواعد بيانات مثل mysql لكن الفرق هو انه سهل الإستعمال وأكثر سلاسة.

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

1- الإتصال ب بقاعدة البيانات

فأول حاجة غادي تزيد projet جديد ب laravel كنظن راك عارف كيفاش بلا من شرح كيفاش.
كيف شفنا فالفيديو بعد تثبيت mongodb وإضافة قاعدة البيانات مازل خاصنا نزيدو واحد الحاجة أخرى نسيت ما ذكرتهاش فالفيديو وهي إضافة mongodb driver ل windows.
باش نديرو هادشي غادي تمشي لهاد الموقع من هنا كتمشي ل DLL وكتحمل  driver على حسب ل version ديال php لي عندك منبعد غادي تهز ل fichier php_mongodb.dll وتمشي ل dossier php سواء ف xampp أو wamp نتا وباش خدام وف dossier ext غادي تزيد  fichier php_mongodb.dll.
منبعد غادي تفتح ل fichier php.ini وتزيد فيه هاد السطر:  extension=php_mongodb.dll.
دباغادي ت redémarrer apache وصافي driver تزاد.
دبا غادي ندوزو لل connexion مع قاعدة البيانات غادي نمشي للملف env. وغادي نزيدها فالكود حددنا فيه ل port لي هو par défaut 27017 وقاعدة البيانات لي هي blog الكود لي غادي تزيد هو :

                                //database connection

MONGO_DB_HOST=127.0.0.1
MONGO_DB_PORT=27017
MONGO_DB_DATABASE=blog
MONGO_DB_USERNAME=
MONGO_DB_PASSWORD=
                            

2- الإتصال ب بقاعدة البيانات تتمة

دبا منبعد مدرنا ل connexion مع قاعدة البيانات فمازال مغديش تخدم عندنا حيت ل application ديالنا مازل مكتعرفش بلي غادي نخدم ب mongodb.
باش نخلي ل application  ديالي تعرف بلي غادي نخدم ب mongodb كنمشي للمجلد config ثم database.php فهاد الملف غادي نزيد ل connexion mongodb فل array connections فعندي driver ول configuration لي درنا فلملف env. هاد الكود زيدو بعد sqlsrv فل  array connections كيف قلنا.
الكود لي زدنا هو :

                                //add to connections

'mongodb' => [
            'driver'   => 'mongodb',
            'host'     => env('MONGO_DB_HOST', 'localhost'),
            'port'     => env('MONGO_DB_PORT', 27017),
            'database' => env('MONGO_DB_DATABASE'),
            'username' => env('MONGO_DB_USERNAME'),
            'password' => env('MONGO_DB_PASSWORD'),
            'options'  => []
        ],
                            

3- إضافة ل package jenssegers/laravel-mongodb

فباش نتمكن من إضافة وتعديل البيانات فخص نزيد واحد ل package لي غادي يمكني من هادشي سميتو jenssegers/laravel-mongodb.
أنا خدام ب laravel 5.4 زدت ل version ديال 5.4 فيلا كنتي خدام بل 5.6 غادي تزيد ل version 3.4.x باش تشوف التفاصيل كامل شوف الموقع ديالهم من هنا.
غادي تفتح cmd تمشي لل projet ديالك منبعد غادي تدير ل commande :
composer require jenssegers/mongodb
منبعد متزاد غادي تمشي ل config منبعد app.php فل array providers غادي تزيد هاد الكود :

                                //add package to providers


Jenssegers\Mongodb\MongodbServiceProvider::class,
                            

4- إضافة ل model Post

فغادي تزيد model جديد سميه Post غادي تمشي ل app وتزيدو أو زيدو بل commande :
php artisan make:model Post
منبعد فيه غادي تزيد الكود لي فيه كنسترجع ل mongodb Eloquent لي زدنا بل package منبعد فل class كنحدد نوع الإتصال بقاعدة البيانات ف mongodb و table posts  فالفيديو راه كاين كيفاش زدت قاعدة البيانات بنفس الطريقة زيد قاعدة البيانات سميها blog وفيها زيد table posts الكود لي زدنا هو :

                                    //model 

<?php

namespace App;

use Jenssegers\Mongodb\Eloquent\Model as Eloquent;

class Post extends Eloquent
{
    protected $connection = 'mongodb';
    protected $collection = 'posts';
    //
    protected $fillable = ['title','body'];
}
                                


بحث في الموقع


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