۳ محمد حسین نفیسی
افزایش ایدی بی دلیل
جامعه لاراول ایجاد شده در ۰۱ مرداد ۱۴۰۲

سلام من یه مشکل عجیب بر بخوردم،من یک table user دارم که فیلد slug یونیک هستش!حالا هر موقع دیتای slug تکراری میشه و ارور دریافت میکنم و بعد دیتای slug رو تغییر میدم و یک رکورد جدید اینسرت میکنم،به تعداد زمانی که دیتای slug تکراری بوده،فیلد id افزایش پیدا کرده

$res = Video::create([
    'name' =>  $request->get('name'),
    'url' =>  $request->get('url'),
    'length' =>  rand(1,9),
    'slug' =>  $request->get('slug'). rand(1,9),
    'description' =>  $request->get('description'),
    'thumbnail' =>  $request->get('thumbnail'),
]);

سلام دوست عزیز، اتفاقی که توضیح دادید، طبیعی هست چون هر سری دارین یه رکورد جدید رو میسازین، وقتی id یه جدول بصورت Auto Increment باشه، با ثبت هر رکورد جدید فارغ از هر چیز دیگه ای یدونه به اون فیلد که معمولا آیدی هست اضافه میشه. برای کاری که شما میخواید انجام بدید که برای جلوگیری از تکراری بودن اسلاگ میتونی از ولیدیشن‌ها و رول Unique استفاده کنید.

صادق برزگر ۰۱ مرداد ۱۴۰۲، ۱۱:۱۸

رکوردی در دیتابیس ثبت نمیشه!!!به ارور برخورد میکنم و وقتی ارور رو برطرف میکنم ایدی رکوردی که به ارور برخورد کرده بود هم محاسبه شده!سوالم اینجاست که وقتی رکوردی اینسرت نشده،چطور آیدیش محاسبه شده!

محمد حسین نفیسی ۰۱ مرداد ۱۴۰۲، ۱۱:۲۴

لطفا سورستون رو روی گیتهاب بزارید و لینکش رو بفرستید تا بررسی کنیم.

صادق برزگر ۰۱ مرداد ۱۴۰۲، ۱۹:۵۷