keyboard_return  چسبون مقالات آموزشی آموزش کار با دیتابیس در لاراول- Laravel Eloquent
  1. آموزش کار با دیتابیس در لاراول- Laravel Eloquent

آموزش کار با پایگاه داده در لاراول با استفاده از Laravel Eloquent

کار با پایگاه داده در لاراول بسیار ساده و جذاب است. در حال حاضر لاراول از پایگاه داده ای

  • MySQL
  • Postgres
  • SQLite
  • SQL Server

پشتیبانی می کند

شما می توانید پرس و جو های (کوئری) خود را با استفاده از SQL، query builder و یا Eloquent ایجاد کنید. با استفاده از Eloquent می توانید به سادگی هر چه بیشتر با دیتابیس کار کنید. در این روش هر جدول با یک مدل متناظر است که برای تعامل داده با آن جدول بکار می رود. در واقع مدل به شما امکان می دهد تا پرس و جوی خود را برای داده های مورد نظر در جدول اجرا کنید. به عنوان مثال ایجاد یک رکورد جدید در جدول به کمک Insert.

قبل از شروع ابتدا یک مدل الوکوئنت خواهیم ساخت. مدل ها معمولا در پوشه app قرار دارند هر چند شما مجاز به ذخیره آنها در مسیر دلخواه خود می باشید. دقت کنید همه مدل ها دارای کلاس Illuminate\Database\Eloquent\Model هستند.

ساده ترین راه برای ساخت یک مدل در لاراول استفاده از دستور make:model می باشد. بنابر این در خط فرمان CMD و در مسیر روت پروژه خود دستور زیر را وارد کنید:

php artisan make:model Name

بجای عبارت Name نام مدل خود را وارد کنید. دقت کنید که حرف اول نام مدل باید حتما با حرف بزرگ نوشته شود به عنوان مثال حتما بصورت "Name" نوشته شود و نه "name" . همچنین مدل متناظر با یک جدول می باشد جدول مذکور هم نام با مدل می باشد با این تفاوت که حرف اول آن کوچک و انتهای نام آن به s ختم می شود برای مثال مدل Name متناظر با جدول names می باشد.

حال اجازه دهید برای مثال به بررسی مدل Card بپردازیم این مدل، امکان ذخیره و بازیابی اطلاعات از جدول cards را به ما می دهد. (به حرف اول نام ها توجه کنید نام مدل با حرف بزرگ و نام جدول با حرف کوچک نوشته میشود همچنین نام جدول به s ختم میشود)

<?php 
namespace App;
use Illuminate\Database\Eloquent\Model;

class Card extends Model { 
    // 
}

?>

نام جدول:

توجه داشته باشید که نیازی نیست نام جدول مورد استفاده را در Eloquent تعریف کنیم. convention بصورت پیش فرض نام کلاس هم نام با مدل که به حرف s نیز ختم شده را بعنوان جدول متناظر با مدل شناسایی خواهد کرد. در این مثال Eloquent مدل Card را متناظر با جدول cards شناسایی و جهت ذخیره و بازیابی اطلاعات استفاده می کند.

برای ساخت یک تیبل از دستور زیر استفاده میکنیم

php artisan make:migration create_cards_table --create=cards

این دستور جدول cards را در migration با نام createcardstable برای ما ایجاد خواهد کرد

حال از مسیر database/migrations نام مایگریشن ایجاد شده را انتخاب کنید و یک ستون جدید با نام title به جدول cards اضافه کنید

 Eloquent createcolumn

سپس در خط فرمان دستور زیر را جهت اعمال تغییرات در جدول وارد کنید

php artisan migrate

این دستور ستون ایجاد شده را در جدول cards ثبت خواهد کرد

خب حالا نوبت به وارد کردن داده های مورد نظر در جدول cards می رسد

لاراول از ابزار قدرتمندی به نام tinker جهت کار با دیتابیس بهره می برد. دستور زیر را در خط فرمان وارد نمایید

php artisan tinker

حال برای وارد کردن رکورد جدید در جدول cards از دستور زیر استفاده می کنیم

$card = new App\ Card;
$card - > title = 'title 1';
$card - > save(); //ذخیره یک رکورد جدید 

$card= new App\Card; 
$card -> title = 'title 2'; 
$card -> save(); //ذخیره یک رکورد جدید 

$card= new App\Card; 
$card -> title = 'chasboon'; 
$card -> save(); //ذخیره یک رکورد جدید 

خب برای بازیابی داده های ذخیره شده از جدول cards و نمایش آن در صفحه مورد نظر از کنترلر استفاده می کنیم

فایل Route.php را از مسیر app/Http پیدا کرده و کد زیر را به آن اضافه کنید.

Route::get('card'/{cards}', 'CardsController@show');

حالا فایل CardsController را از مسیر app/Http/Controllers باز کرده و تابع زیر را در آن تعریف کنید

public function show($id) { 
    return Crad::find($id);
}

دقت کنید حتما در ابتدای این فایل از عبارت use App\Card استفاده کنید در غیر اینصورت پروژه اجرا نخواهد شد.

تبریک!!!! شما موفق به اجرای کامل پروژه شده اید. به منظور اجرای پروژه و مشاهده خروجی دستور زیر را در خط فرمان وارد کنید

php artisan serve

و در مرورگر خود آدرس localhost:8000/card/1 را وارد کنید در صورتیکه مراحل را به درستی انجام داده باشید باید تصویری مشابه زیر ببینید

eloquent

جهت مطالعه بیشتر می توانید از مستندات لاراول بهره ببرید

آموزش کار با دیتابیس در لاراول- Laravel Eloquent - 4.2 از 5 بر اساس 150 رای

امتیاز کاربران

آموزش کار با دیتابیس در لاراول- Laravel Eloquent
دیدگاه‌ها
Mohsen Mohsen 6 سال پیش
ممنون از زحماتتون مختصر و بسیار مفید
ali ali 7 سال پیش
توضیح خوبی بود ممنون.

2024 © Copyright کليه حقوق مادی و معنوی براي چسبون محفوظ است و هرگونه کپی برداری پیگرد قانونی دارد.