تکرار کردن یک سطر در لاراول
ﺯﻣﺎﻥ ﻣﻄﺎﻟﻌﻪ: 1 دقیقه

تکرار کردن یک سطر در لاراول

امروز میخواهم در مورد ویژگی در لاراول صحبت کنم که به اصطلاح "hidden" است ، یعنی این قابلیت در سیستم لاراول وجود دارد اما در documentation لاراول چیزی از این ویژگی گفته نشده است . این ویزگی replicate است . این تابع به شما کمک میکند تا یک سطر از اطلاعات جدول دیتابیس خودتان را در سریع ترین زمان ممکن کپی کنید . 

برای شروع ما جدولی بصورت زیر را ایجاد میکنیم : 

Schema::create('tasks', function (Blueprint $table) {
    $table->increments('id');
    $table->string('task');
    $table->text('description');
    $table->timestamps();
    $table->softDeletes();
});

و همینطور مدل مربوط به این جدول را با اطلاعات زیر ایجاد میکنیم : 

class Tasks extends Model
{
    use SoftDeletes;
    protected $table = 'tasks';
    protected $fillable = ['task', 'description'];
}

من یک سطر به این جدول به صورت زیر وارد کردم : 

حالا با اجرای دستور زیر یک تکرار یا کپی از سطری بالا ایجاد میکنیم :

$tasks = Tasks::find(1);
$newTask = $tasks->replicate();
$newTask->save();

حالا شما در دیتابیس خودتان باید یک کپی از اطلاعات سطر 1 خود داشته باشید با این تفاوت که ID اطلاعات وارد شده و همینطور زمان ساخت و آپدیت سطر جدید متفاوت است . 

خب به همین راحتی شما توانستید یک تکرار از یک سطر از جدولتان داشته باشید . البته شما میتوانید با استفاده از حلقه ها ، تکرارهای با ویژگی های بیشتر هم ایجاد کنید و نگران هیچ مشکلی نباشید . امیدوارم این پست مورد استفاده دوستان قرار گرفته باشد .

چه امتیازی برای این مقاله میدهید؟

خیلی بد
بد
متوسط
خوب
عالی
در انتظار ثبت رای

/@hesammousavi
حسام موسوی
طراح و برنامه نویس

بیشتر از ۱۵ سال هست که در حال برنامه‌نویسی و انجام پروژه های مختلف هستم و ۱۰ سالی هست که آموزش برنامه‌نویسی به علاقمندان حوزه برنامه نویسی میدیم در همه این مدت الان عاشق کدزنی و چالش‌های پروژه‌های مختلفم. به تدریس علاقه خاصی دارم و دوست دارم دانشی که در این راه بدست آوردم را در اختیار دیگران هم قرار بدم. 

دیدگاه و پرسش

برای ارسال دیدگاه لازم است وارد شده یا ثبت‌نام کنید ورود یا ثبت‌نام

در حال دریافت نظرات از سرور، لطفا منتظر بمانید

در حال دریافت نظرات از سرور، لطفا منتظر بمانید