با سلام
من یک فرم ثبتنام دارم که بعد از ثبتنام میخوام یک کد رهگیری یونیک با فرمت 990001 به ازای هر ثبت نام ایجاد بشه که با اضافه شدن هر رکورد یک واحد به این عدد اضافه میشه و پس از ثبت رکورد کد رهگیری مربوطه به کاربر نمایش داده بشه. حالا در لاراول به صورت منطقی باید چکار کرد؟
کد در چه مرحلهای تولید بشه و در کدوم مرحله فیلد آخرین رکورد بررسی بشه که نسبت به اون کد جدید ساخته بشه و آیا در لاراول فانکشنی برای این کار وجود داره.
ممنون میشم تجربیاتتون رو در اختیارم قرار بدید.
سلام
برای اینکه از عدد خاصی شروع بشه از این روش استفاده کنید
Schema::create('users', function (Blueprint $table) {
$table->bigIncrements('id')->unsigned();
$table->integer('test1')->nullable();
$table->integer('test2')->nullable();
});
DB::update("ALTER TABLE users AUTO_INCREMENT = 990001;");
من باشم این کد رو به صورت داینامیک داخل مدلم می سازم.
کافیه که ۹۹۰۰۰۰ رو با آیدی یوزر جمع کنید تا این کد به دست بیاد.
به نظرم یه فیلد از char به اسم مثلا tracking_code تعریف کنید
متد save مدلتونو اورراید کنید و در صورتی که فید tracking_code مقدار نداشت مقدار دهی کنید. (یه متد protected توی مدل بزارید که کارش جنریت کردن این کد هست که داخل اون میتونید بر اساس نیازسنجی خودتون یه رشته ایجاد کنید برای این فیلد)
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟