آموزش کار با مانگو دی بی/نصب MongoDB و استفاده در لاراول

آموزش کار با مانگو دی بی/نصب MongoDB و استفاده در لاراول

در این مطلب قصد داریم نحوه دیپلوی کردن پروژه لاراولی با استفاده از مانگو دی بی را یاد بگیریم:

 

بعد از اینکه لاراول رو نصب کردیم با دستور زیر مانگو رو هم نصب می کنیم (البته برای این بخش بهتراست که از طریق داکیومنت مانگو دی بی پیش بروید).

معروف ترین پکیجی که لاراولی ها برای کار با مانگو باهاش کار میکنند jenssegers/laravel-mongodb هست که میتوانید نصبش کنید ولی قبل از آن باید درایور PHP برای مانگو رو نصب کنیم.  برا این کار می توانید این پست از داکیومنت PHP را بررسی کنید، که در واقع اگه PECL داشته باشید به راحتی با کامند زیر می توانید این کار را انجام دهید:

حالا پکیج jenssegers رو نصب کنید و کارایی که گفته رو انجام بدید. حالا قانونا باید همه چی اوکی باشه ولی بازم واسه من اوکی نبود. اولین کاری که میکنید یبار سرویس مانگو رو استارت کنید.

اگه دستور بالا بدون هیچ پیامی اجرا شد ینی کارتون درسته. بعد باید وارد اینترفیس مانگو بشید و یه یوزر بسازید. برای این کار mongo رو تایپ کنید و اینتر کنید. یه دیتابیس به صورت زیر بسازید.

دستور بالا اگه دیتابیس رو داشته باشید سلکتش میکنه اگه نداشته باشید میسازه. چقد کامند خوبیه برای اینکه دیتابیس ها رو ببینید هم میتونید از دستور زیر استفاده کنید.

حالا با دستور زیر میتونید یوزر های این دیتابیس رو ببینید:

db.getUsers()

توجه کنید که db نباید اسم دیتابیستون باشه و همین db باید باشه. اگه یوزری ندارید باید بسازیدش. برای این کار این شکلی میتونید عمل کنید:

db.createUser({user:‘admin’, pwd:‘Aa123’, roles: [{role:“readWrite”, db:“test”}]})

 

و حالا برید کانکشن دیتابیس رو توی فایل database.php بسازید. و بعدش دیفالت کانکشن رو هم تغییر بدید.

 

‘mongodb’ => [
‘driver’ => ‘mongodb’,
‘host’ => env(‘DB_HOST’, ‘localhost’),
‘port’ => env(‘DB_PORT’, 27017),
‘database’ => ‘test’,
‘options’ => [
‘database’ => ‘admin’
]
],

 

‘default’ =&gt; env(‘DB_CONNECTION’, ‘mongodb’),<br>

من یوزر و پسورد رو هم اینجا گذاشتم و اررور داد. شما اون یکی دو تا رو توی فایل .env بذارید.

 

و حالا php artisan migrate کنید. ایشالا که همه چی اوکی باشه.

اگه از قبل دیتابیس مانگو دی بی دارید و میخواید ایمپورتش کنید یه راه ساده استفاده از روش زیر هست که کل کالکشن هاتون رو ایمپورت میکنه:

mongorestore db test ./orgdictionary

استفاده از Eloquent در لاراول با MongoDB

اگه میخواید از Eloquent توی لاراول استفاده کنید باید مدل هاتون رو از Eloquent پکیج اسکتند کنید. بعنوان مثال برای مدل Post بصورت زیر عمل کنید:

حالا میتونید توی کنترلرتون از App\Post::all() و… استفاده کنید. البته برای جدول یوزر باید یه حرکت بیشتر هم بکنید و اون اینه:

این باعث میشه که توی مرحله Auth هم به اررور نخورید و مثل حالت معمولی با Auth::attempt لاگین کنید.

2 دیدگاه دربارهٔ «آموزش کار با مانگو دی بی/نصب MongoDB و استفاده در لاراول»

دیدگاه‌ خود را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

همچنین می توانید از طریق تلگرام، واتس اپ و تماس تلفنی با ما در تماس باشید.
شماره تماس: 09388683852