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

ترجمه و تالیف : حسام موسوی
تاریخ انتشار : 13 خرداد 98
خواندن در 34 ثانیه
دسته بندی ها : لاراول

امروز میخواهم در مورد ویژگی در لاراول صحبت کنم که به اصطلاح "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 اطلاعات وارد شده و همینطور زمان ساخت و آپدیت سطر جدید متفاوت است . 

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

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

گردآوری و تالیف حسام موسوی

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