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