Armin Rahmati
3 سال پیش توسط Armin Rahmati مطرح شد
6 پاسخ

ذخیره نکردن همه فیلدها

سلام دوستان.
این جدول users من هست:

Schema::create('users', function (Blueprint $table) {
            $table->id();
            $table->string('firstName');
            $table->string('lastName');
            $table->decimal('phone', 10, 0);
            $table->string('idNumber');
            $table->timestamps();
        });

حالا فرض کنید زمانی که کاربر میخواد ثبت نام کنه من فقط به فیلد phone نیاز دارم که کدمو به صورت زیر نوشتم:

public function register(Request $request)
    {
        $fields = $request->validate([
            'phone' => 'required',
        ]);

        $user = User::create([
            'phone' => $fields['phone'],
        ]);

        $token = $user->createToken('api_token')->plainTextToken;

        $response = [
            'user' => $user,
            'token' => $token
        ];

        return response($response, 201);
    }

اما زمانی که میخوام ثبت نام کنم، ارور زیر رو میده:

General error: 1364 Field 'firstName' doesn't have a default value

ممنون میشم راهنمایی کنید.


ثبت پرسش جدید
مهدی اردشیر
تخصص : یه برنامه نویس
@mehdi0121 3 سال پیش مطرح شد
0

اینو توی مایگریشن اخر ستون هایی که میخای بعدا وارد بشن بذار

->nullable();

مهدی اردشیر
تخصص : یه برنامه نویس
@mehdi0121 3 سال پیش مطرح شد
0

میگه firstName مقدار پیش فرض نداره باید حتما وارد بشه


Armin Rahmati
@arminrahmati999 3 سال پیش مطرح شد
0

@mehdi0121
بله متوجه ارور شدم ولی بعدا میخوام کاربر اون 3 تا فیلد رو وارد کنه، فقط میخوام موقع ثبت نام موبایلشو وارد کنه


مهدی اردشیر
تخصص : یه برنامه نویس
@mehdi0121 3 سال پیش مطرح شد
0

اینو توی مایگریشن اخر ستون هایی که میخای بعدا وارد بشن بذار

->nullable();

Armin Rahmati
@arminrahmati999 3 سال پیش مطرح شد
0

@mehdi0121
یعنی به جز این روش، راه دیگه ای وجود نداره؟


مهدی اردشیر
تخصص : یه برنامه نویس
@mehdi0121 3 سال پیش مطرح شد
0

یا میتونی یه مقدار دیفالت درنظر بگیری
راه دیگه ایی فکر نکنم بشه


میلاد خسروی
تخصص : برنامه نویس بامزه
@milwad 3 سال پیش مطرح شد
0

سلام خسته نباشید
یا میتونی nullable بزاری
اگه نمیخوای یه مقدار default میدی به هر کدوم بعد میایم میگی بیا پروفایل رو اول ابدیت کن ابدیت میکنه و اوکی میشه ولی اولی بهتره


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام