错误无法在laravel中工作并在数据库中给出列错误

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了错误无法在laravel中工作并在数据库中给出列错误相关的知识,希望对你有一定的参考价值。

我有一些插入数据的输入。当我填写所有输入然后它的工作成功,但当我试图插入空输入然后它给我这个错误完整性约束违反:1048列'星期一'不能为空

现在我也请求这个表单,并提出所需的一切,并试图显示错误但这也无法正常工作。我不知道我的代码有什么问题。以下是我的代码。请检讨一下:)

//控制器

public function store(Request $request)
    {
        $timetable = $request->all();
        Timetable::create($timetable);
        return redirect()->back();
    }

//视图

<div class="ml-4 mr-4 py-3">

        {!! Form::open(['method'=>'POST', 'action'=>'TimetableController@store', 'class' => 'mb-5']) !!}

        <div class="form-group">
            {!! Form::label('class_id', 'Class', ['class'=>'control-label display-4']) !!}
            {!! Form::select('class_id', [''=>'Choose Class'] + $classes, null,  ['class'=>'form-control']) !!}
        </div>

        <div class="row">
            <div class="col-md-12">
                <table class=" table table-bordered table-hover table-sortable">
                    <thead>
                        <tr>
                            <th class="text-center">Period</th>
                            <th class="text-center">Monday</th>
                            <th class="text-center">Tuesday</th>
                            <th class="text-center">Wednesday</th>
                            <th class="text-center">Thursday</th>
                            <th class="text-center">Friday</th>
                            <th class="text-center">Saturday</th>

                        </tr>
                    </thead>
                    <tbody>
                        <tr>
                            <td style="width: 10%;">
                                {!! Form::text('period', null, ['class'=>'form-control', 'placeholder' => 'Period name']) !!}
                            </td>
                            <td style="width: 15%;">
                                    {!! Form::textarea('monday', null, ['class'=>'form-control', 'rows'=>2, 'placeholder' => 'Class timing, Teacher name, Subject name']) !!}
                            </td>
                            <td style="width: 15%;">
                                {!! Form::textarea('tuesday', null, ['class'=>'form-control', 'rows'=>2, 'placeholder' => 'Class timing, Teacher name, Subject name']) !!}
                            </td>
                            <td style="width: 15%;">
                                {!! Form::textarea('wednesday', null, ['class'=>'form-control', 'rows'=>2, 'placeholder' => 'Class timing, Teacher name, Subject name']) !!}
                            </td>
                            <td style="width: 15%;">
                                {!! Form::textarea('thursday', null, ['class'=>'form-control', 'rows'=>2, 'placeholder' => 'Class timing, Teacher name, Subject name']) !!}
                            </td>
                            <td style="width: 15%;">
                                {!! Form::textarea('friday', null, ['class'=>'form-control', 'rows'=>2, 'placeholder' => 'Class timing, Teacher name, Subject name']) !!}
                            </td>
                            <td style="width: 15%;">
                                {!! Form::textarea('saturday', null, ['class'=>'form-control', 'rows'=>2, 'placeholder' => 'Class timing, Teacher name, Subject name']) !!}
                            </td>
                        </tr>
                    </tbody>
                </table>
            </div>
        </div>
        {{--<a class="fas fa-folder-open btn btn-success float-right mb-4"> Save</a>--}}
        {!! Form::button(' Save', ['type'=>'submit', 'class'=>'fas fa-folder-open btn btn-success float-right mb-4']) !!}
        {{--<a id="add_row" class="fas fa-plus-square btn btn-warning float-right mb-4 mr-2"> Add Row</a>--}}

        @include('includes.form_errors')

        {!! Form::close() !!}

    </div>
答案

嗯,错误是显而易见的。返回迁移,找到monday列,并添加->nullable()

示例:$table->string('monday')->nullable();

以上是关于错误无法在laravel中工作并在数据库中给出列错误的主要内容,如果未能解决你的问题,请参考以下文章

ctypes.cast 在 python2 中工作并在 python3 中抛出 ArgumentError

代码在调试中工作并从 Visual Studio 运行,但是发布模式会出错

无法让 Laravel OrderBy 日期在 Eloquent 语句中工作

让 Backbutton 在单页网站中工作并实现“说话”的 URL

sdcc 在 keil 中工作的代码上给出语法错误

从 GUI 启动服务器端操作并在操作完成后更新 GUI