عنوان مقاله :

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

گردآوری و تالیف : حسام موسوی
تاریخ انتشار : 03 بهمن 1394
دسته بندی ها : لاراول

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

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

مقالات پیشنهادی

یه لقمه نون و لاراول

در این مقاله کوتاه میخواهم در مورد برخی از موضوعاتی در لاراول صحبت کنم که واقعا کسانی که خواهان کار با لاراول هستند باید این موارد را بدانند . بارها و...

10 متد Collections کمتر شناخته شده ( اما بسیار جالب ) لاراول

به نظر من Eloquent لاراول یک ابزار عالی در لاراوله - احتمالا نیازی به تاکیید کردن من روی این مسئله نیست چون همه این مسئله رو میدونن . امروز میخوام لیس...

فیلتر کردن نتایج query ها با شروط مختلف

شاید عنوان این مطلب برای شما کمی گیج کننده باشه ، اما بزارید براتون با یک مثال سادش کنم شما دارای لیستی از مشتری هستید و اونا رو با دستور Customer::al...

چرا لاراول بهترین فریمورک پی اچ پی است

لاراول یک فریم ورک رایگان با زبان php است که برای توسعه برنامه های کاربردی وب مورد استفاده قرار میگیره . این فریمورک متن باز بوده و از الگویی (model-v...

دیدگاه های ارزشمند شما

سعید | 1 سال پیش

سلام
من الان یک مشکل در ساخت دوتا auth برای صفحه کاربرام و صفحه مدیریت دارم.
الان من صفحه لاگین برای مدیریت ساخته ام ولی چطوری بتونم از auth برای صفحه ورود کاربرام استفاده کنم؟
با تشکر

admin | 1 سال پیش

میتونید این قسمت رو مشاهده کنید
http://roocket.ir/series/meet-laravel/episode/13

میثم | 1 سال پیش

سلام ممنون از مطلب خوبتون ی پست در رابطه با این قضیه میزارید ک چطور میشه پروژه ساخته شده رو به لاراول5 ببریم ممنون میشم جواب بدید.

admin | 1 سال پیش

منظورتون اینکه چطور پروژه ساخته شده از یک نسخه لاراول مثل لاراول 5 به لاراول 5.2 انتقال داد ؟

میثم | 1 سال پیش

ببخشید یادم رفته بود بنویسم چطوری پروژه adobe edge رو به لاراول انتقال بدم چون با ید تو پوشه public باشه عمل نمیکنه

admin | 1 سال پیش

در adobe edge بعد از تکمیل پروژه قطعا فایل های html دارید و css و ...
که فایل های html رو به فولدر resources و ویوها انتقال میدید و فایل های استاتیک مثل css رو به فولدر public
همین طبق روال معمولی

میثم | 1 سال پیش

این قضیه رو میدونم ولی مشکل من اینه که کدها اجرا نمیشه چون ۀدرس دهی مشکل پیدا میکنه و فایل جاوا درون پوشه پابلیک اجرا نمیشه و نمیتونه عکسها رو پیدا کنه

میثم | 1 سال پیش

ی مطلب دیگه اینه که من اون پروژه رو میخام داخل بلید قرار بدم یعنی فایل ایندکس ویو

admin | 1 سال پیش

باید مستر پیج بسازین کد های Html رو توش قرار بدین برای قرار دادن css از link و بقیه مثل روال من به کدهاتون دسترسی ندارم و نمی دونم به چه صورتیه اما روند مثل بقیه کارهاست

میثم | 1 سال پیش

میتونم کدهارو بهتون بدم ببینید میشه حل کرد یا نه ؟من در حد خوبی لاراول بلدم و در مورد مسترپیج و.. میدونم ولی این ی ذره مشکل بود آیا میتونم براتون بفرستم؟

admin | 1 سال پیش

به ایمیل زیر اطلاعاتتون رو بفرستید لطفا
info@roocket.ir

وحید | 1 سال پیش

به نظرتون کاربردش در چه مواردی می تونه باشه؟

admin | 1 سال پیش

مثلا شما یک app برای برنامه کاریتون ایجاد میکنید (مثل یک تقویم ) و یک وظیفه که در اینده باید انجام بدید رو در اون میسازید شما اون کارو مممکنه چند بار انجام بدید
بجای اینکه بیایید از ابتدا اطلاعات اون وظیفه رو در فرم وارد کنید و وظیفه جدید با مشخصات تکراری بسازید به راحتی روی کپی کردن اون وظیفه میزنید و فقط زمان انجامش رو تغییر میدید.

معین | 1 سال پیش

ویژگی جالبی بود. ممنون