douzhuangna6906 2019-07-16 16:37
浏览 83
已采纳

不需要日期字段,但没有它,表单将不会提交

I am making a create post form with the date field not required and i made a mutator to make the date NULL in database when not entered in form.

Form in create.blade.php

<div class="form-group {{ $errors->has('published_at') ? 'has-error' : '' }}">
    {!! Form::label('published_at', 'Publish date') !!}
    {!! Form::text('published_at', null, ['class' => 'form-control', 'placeholder' => 'Y-m-d H:i:s']) !!}
    @if($errors->has('published_at'))
        <span class="help-block">{{ $errors->first('published_at') }}</span>
    @endif
</div>

Mutator in Post.php:

public function setPublishedAtAttribute($value)

{
    $this->attributes['published_at'] = $value ?: NULL;
}

Store function in controller:

$this->validate($request, [

    'title' => 'required',
    'slug' => 'required|unique:posts',
    'body' => 'required',
    'published_at' => 'date_format:Y-m-d H:i:s',
    'category_id' => 'required'

]);

I expect the date to be NULL in database when not entered in form , but i get a validating error in form "The published at does not match the format Y-m-d H:i:s." and it won't submit

  • 写回答

2条回答 默认 最新

  • doufubu2518 2019-07-16 17:48
    关注

    You can do the following

          'published_at' => 'nullable|date_format:Y-m-d H:i:s',
    

    and in you migration file you can set the attribute as nullable

    $table->timestamp('published_at')->nullable();
    

    So if there isn't a value ,will be nullable

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 数学的三元一次方程求解
  • ¥20 iqoo11 如何下载安装工程模式
  • ¥15 本题的答案是不是有问题
  • ¥15 关于#r语言#的问题:(svydesign)为什么在一个大的数据集中抽取了一个小数据集
  • ¥15 C++使用Gunplot
  • ¥15 这个电路是如何实现路灯控制器的,原理是什么,怎么求解灯亮起后熄灭的时间如图?
  • ¥15 matlab数字图像处理频率域滤波
  • ¥15 在abaqus做了二维正交切削模型,给刀具添加了超声振动条件后输出切削力为什么比普通切削增大这么多
  • ¥15 ELGamal和paillier计算效率谁快?
  • ¥15 蓝桥杯单片机第十三届第一场,整点继电器吸合,5s后断开出现了问题