违反完整性约束:1048 laravel Laravel

时间:2019-03-07 19:23:57

标签: php laravel

我现在有3张桌子 enter image description here 在我的表汽车中,我得到了表系列标记的2个外键。

事实上,我的目标是创建录音。

enter image description here

我有一条错误消息...

SQLSTATE [23000]:违反完整性约束:1048 Le champ'name'ne peutêtrevide(null)(SQL:插入seriesnamefk_mark

enter image description here enter image description here

我的问题出在我的 SerieController 上吗?

use Illuminate\Http\Request;
use App\Serie;
use App\Mark;


class SerieController extends Controller
{

    public function index()
    {
        $series = Serie::oldest()->paginate(5);
        return view('admin.series.index', compact('series'))
                  ->with('i', (request()->input('page', 1)-1)*5);
    }

    public function create()
    {
        $marks = Mark::all();
        return view('admin.series.create', compact('marks'));

    }


    public function store(Request $request)
    {

        Serie::create([
            'name' => request('name'),
            'fk_mark' => request('fk_mark')
        ]);


        return redirect()->route('series.index')
                    ->with('success', 'save');

     }

我认为我的问题出在我的 CarController 上,我的语法正确吗?

use Illuminate\Http\Request;
use App\Car; 
use App\Serie;
use App\Mark;

class CarController extends Controller
{
    /**
     * Display a listing of the resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function index()
    {
        $cars = Car::oldest()->paginate(5);
        return view('admin.cars.index', compact('cars'))
                  ->with('i', (request()->input('page', 1)-1)*5);
    }

    /**
     * Show the form for creating a new resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function create()
    {

        $series = Serie::all();
        $marks = Mark::all();
        return view('admin.cars.create', compact('series' , 'marks'));


    }


    /**
     * Store a newly created resource in storage.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return \Illuminate\Http\Response
     */
    public function store(Request $request)
    {

        Car::create([
            'matriculation' => request('matriculation'),
            'fk_serie' => request('fk_serie'),
            'fk_mark' => request('fk_mark')
        ]);


        return redirect()->route('cars.index')
                    ->with('success', 'save');

     }

谢谢您的帮助,我真的很受困扰。

编辑:这是我在PhpMyAdmin上的表格

汽车

enter image description here

系列

enter image description here

标记

enter image description here

1 个答案:

答案 0 :(得分:1)

您应该验证您的请求。在您的情况下,请求中的name属性可能为null。