Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php SQLSTATE[HY000]:一般错误:1364字段';客户id';不';没有默认值_Php_Laravel_Migration_Laravel 6 - Fatal编程技术网

Php SQLSTATE[HY000]:一般错误:1364字段';客户id';不';没有默认值

Php SQLSTATE[HY000]:一般错误:1364字段';客户id';不';没有默认值,php,laravel,migration,laravel-6,Php,Laravel,Migration,Laravel 6,我试图通过请求post发送“client_id”来将post与客户机联系起来,然后当我创建它时,它会出现以下异常: SQLSTATE[HY000]:一般错误:1364字段“客户机id”没有默认值(SQL:insert intoposts(内容,更新时间,创建时间)值(萨达德,2020-09-17 18:26:382020-09-17 18:26:38)) @csrf {{method_field('POST')} @include('includes.errors') 邮递 您需要在可填充的

我试图通过请求post发送“client_id”来将post与客户机联系起来,然后当我创建它时,它会出现以下异常: SQLSTATE[HY000]:一般错误:1364字段“客户机id”没有默认值(SQL:insert into
posts
内容
更新时间
创建时间
)值(萨达德,2020-09-17 18:26:382020-09-17 18:26:38))


@csrf
{{method_field('POST')}
@include('includes.errors')
邮递

您需要在
可填充的
数组中添加
客户端id
,就像这样

protected $fillable = [
    ...

    'client_id',

    ...
];
另一种解决方案

您可以添加您的
Post
模型

protected $guarded = [];

这将使所有属性都可分配

有一种可能性可以考虑,我已经经历过了

  • client\u id
    字段不是可为空的
    列,因此它必须具有自动递增功能

  • 由于
    client\u id
    字段不是可为空的
    列,请在输入新行时指定其内容

  • 根据官方的laravel文档,迁移中的
    ->unsigned()
    函数只是将unsigned属性添加到列中,而没有添加AUTO INCREMENT属性

    如果是这种情况,您有两种选择

  • ->autoIncrement()
    函数添加到
    客户机id
    列以进行迁移
  • 将列类型更改为
    ->foreigned('user\u id')
    (这意味着删除现有的
    ->unsigned()
    函数)

  • 请尝试在DB内将此列的默认值设置为null,然后重试即可