آموزش دریافت ای دی مدل ذخیره شده در لاراول با استفاده از Eloquent و فساد DB

آموزش دریافت ای دی مدل ذخیره شده در لاراول با استفاده از Eloquent و فساد DB

همانطور که می دانید در لاراول ما می توانیم با استفاده از Eloquent و همچنین با کمک فساد DB عملیات های insert, update, delete و Read را انجام دهیم. در این مطلب می خواهیم دو تابع مفید برای دریافت id ذخیره شده در هنگام کار با فساد DB را به شما آموزش دهیم.

همانطور که می دانید در لاراول ما می توانیم با استفاده از Eloquent و همچنین با کمک فساد DB عملیات های insert, update, delete و Read را انجام دهیم.

 

در این مطلب می خواهیم دو تابع مفید برای دریافت id ذخیره شده در هنگام کار با فساد DB را به شما آموزش دهیم.

همانطور که می دانید اگر از Eloquent برای ذخیره سازی مدل خود استفاده نمایید، نمونه ذخیره شده برای شما باز خواهد گشت، که شما می توانید با استفاده از آن ای دی نمونه ی ذخیره شده را به راحتی بازیابی کنید. اما در هنگام استفاده از فساد DB تنها مقدار true یا false  پس از عملیات insert برای شما بر خواهد گشت، با این حال شما می توانید با استفاده از توابعی که در ادامه ذکر خواهیم کرد، به راحتی به Id مدل ذخیره شده دسترسی داشته باشید.

1- استفاده از تابع  insertGetId() 

با استفاده از متد insertGetId() می توانید ای دی مدل ذخیره شده را دیافت کنید:
 

$id = DB::table('users')->insertGetId(
    [ 'name' => 'first' ]
);

dd($id);

 

2- استفاده از متد lastInsertId() 

با استفاده از متد lastInsertId()  نیز می توانید ای دی مدل ذخیره شده را دریافت کنید، در این حالت شما باید یک شی PDO  ایجاد نمایید تا بتوانید ای دی ذخیره شده را دریافت نمایید:

DB::table('users')->insert([
    'name' => 'TestName'
]);
$id = DB::getPdo()->lastInsertId();;
dd($id);

 

شما همچنین در هنگام استفاده از Eloquent به راحتی و بصورت زیر ای دی نمونه ذخیره شده را دریافت کنید:

$data = User::create(['name'=>'first']);
dd($data->id);

 

امیدوارم این آموزش به شما کمک کرده باشه، اگر شما روش های دیگری برای دریافت id مدل ذخیره شده سراغ دارید، از بخش نظرات با ما در میان بگذارید


دسته بندی ها:

لاراول

ارسال نظر

برای اطلاع از پاسخ به نظر شما می توانید ایمیل یا شماره موبایل خود را وارد نمایید. *

ایمیل و شماره موبایل شما کاملا مخفی خواهد ماند و در سایت نمایش داده نخواهد شد. *

اگر نظری برای این مطلب ارسال شد از طریق ایمیل مرا اطلاع بده!
لسیت نظرات
هنوز برای این مطلب نظری ارسال نشده است!