SQLSTATE [HY000]: общая ошибка: 1364 Поле «имя» не имеет значения по умолчанию - PullRequest
0 голосов
/ 09 мая 2018

Я использую mysql v5.7 и laravel 5.5 . При попытке «добавить товар» возникает следующая ошибка.

SQLSTATE [HY000]: общая ошибка: 1364 Поле «имя» не имеет значение по умолчанию

Мои продукты стол

 public function up()
    {
        Schema::create('products', function (Blueprint $table) {
            $table->increments('id');
            $table->string('name');
            $table->string('description');
            $table->string('size');
            $table->string('price');
            $table->string('image');
            $table->timestamps();
        });
    }

My ProductController с store method

public function store(Request $request)
{
    //validation
    $this->validate($request,[
        'name'=> 'required',
        'description'=>'required',
        'size'=>'required',
        'price'=>'required',
        'image'=>'image|mimes:png,jpg,jpeg|max:10000'
    ]);

    //image upload
    $image=$request->image;
    if($image){
        $imageName=$image->getClientOriginalName();
        $image->move('images',$imageName);
        $formInput['image']=$imageName;
    }

    Product::create($formInput);
    return redirect()->route('product.index');
}

Когда я добавляю метод ->nullable в поле, ошибки не возникает, но данные в таблице равны нулю.

Пожалуйста, помогите мне ...

Ответы [ 2 ]

0 голосов
/ 27 сентября 2018

Пожалуйста, проверьте, указали ли вы поле имени в $ fillables в вашей модели.

protected $ fillables = ['name'];

0 голосов
/ 09 мая 2018

Вы никогда не определяли проверенные данные как переменную. Попробуйте это для проверки.

$formInput = $this->validate($request,[
    'name'=> 'required',
    'description'=>'required',
    'size'=>'required',
    'price'=>'required',
    'image'=>'image|mimes:png,jpg,jpeg|max:10000'
]);

Это сохранит все проверенные поля в переменной $formInput в виде массива.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...