0

私はLaravelフレームワークが初めてです。

ユーザー テーブルの移行で問題に直面しています。テーブルの 'firstname' に nullable を追加しました。これは機能しますが、'lastname' 列に同じエラーが表示されます。すべての列に nullable() を含めましたが、これは正しい方法ではありません。これを解決するには?? 誰でも提案できますか。

「firstname」列の問題に直面しているユーザー移行テーブル。 create_user_table.php

public function up()
{
    Schema::create('users', function (Blueprint $table) {
        $table->id();
        $table->string('firstname');
        $table->string('lastname');
        $table->string('email')->unique();
        $table->date('dob');
        $table->char('address',100);
        $table->bigInteger('phonenumber');
    });
}

ストア UserController.php を持つ UserController

    public function store(Request $request)
        {
            $request->validate([
                'firstname'=>'required',
                'lastname'=>'required',
                'email'=>'required',
            ]);

            $user=new User([
                $user->firstname=>$request->get('firstname'),
                'lastname'=>$request->get('lastname'),
                'email'=>$request->get('email'),
                'dob'=>$request->get('dob'),
                'address'=>$request->get('address'),
                'phonenumber'=>$request->get('phonenumber')
                ]);
                $user->save();
                return redirect('/users')->with('success','user added');
        }
4

2 に答える 2

0

投稿したコードにエラーがあります。修正は次のとおりです。

public function store(Request $request)
        {
            $request->validate([
                'firstname'=>'required',
                'lastname'=>'required',
                'email'=>'required',
            ]);

            $user=new User([
                'firstname' => $request->get('firstname'), // $user->firstname=>$request->get('firstname'),
                'lastname'=> $request->get('lastname'),
                'email' => $request->get('email'),
                'dob' => $request->get('dob'),
                'address' => $request->get('address'),
                'phonenumber' => $request->get('phonenumber')
                ]);
                $user->save();
                return redirect('/users')->with('success','user added');
        }

また、ここでは大量割り当てを使用しているため、使用されているすべての列を User モデルの入力可能な配列に追加する必要があります。

これは、大量割り当てとは何かに関するリンクです

于 2020-06-09T20:18:24.587 に答える