SQLSTATE [23000]: нарушение ограничения целостности: 1048 Заголовок столбца не может быть пустым - PullRequest
0 голосов
/ 14 октября 2019

SQLSTATE [23000]: Нарушение ограничения целостности: 1048 Заголовок столбца не может быть пустым (SQL: вставить в posts (title, body, updated_at, created_at) значения (?,? , 2019-10-14 17:41:00, 2019-10-14 17:41:00))

контроллер (CRUD) контроллер

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
 use App\post;
class postcontroller extends Controller
{


    public function store(Request $request)
    {

    $add = new post;
    $add->title= $request->input('title');
    $add->body= $request->input('body');;
    $add->save();

    session()->flash('msg','new post added successfully!');

    return redirect()->route('posts.show',$add->id);
    }

Модель (постмодель)

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class post extends Model
{


     protected $fillable = ['title', 'body'];
}

view -> (это просто использование laravelcollective)

1 Ответ

1 голос
/ 15 октября 2019

Похоже, что вы отправляете нулевое значение для заголовка, и чтобы выявлять ошибки проверки ранее в вашем приложении, вам следует рассмотреть возможность введения некоторой проверки в вашем контроллере

    <?php


namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\post;

class postcontroller extends Controller
{
    public function store(Request $request)
    {
       $request->validate([
        'title' => 'required',
        'body' => 'required',
       ]);

       $add = Post::create([
          'title' => $request->input('title'),
          'body'  => $request->input('body')
       ]);

        session()->flash('msg','new post added successfully!');

        return redirect()->route('posts.show', $add->id);
    }

Убедитесь, что вы установилиполя title и body в вашей форме правильно

<form><!-- / Dont forget the action, crf and other required attr of form -->

   <input type="text" name="title">
   <textarea name="body"></textarea>
</form>

Подробнее о проверке формы см. на https://laravel.com/docs/master/validation#validation-quickstart

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