【问题标题】:Laravel null value in column "created_at" violates not-null constraint for pivot table“created_at”列中的 Laravel 空值违反了数据透视表的非空约束
【发布时间】:2016-06-13 11:21:25
【问题描述】:

在数据透视表中保存数据时出现以下错误

Not null violation: 7 ERROR: null value in column "created_at" violates not-null constraint DETAIL: Failing row contains (4, 10, 16, null, null). (SQL: insert into "child_packages" ("child_id", "package_id") values (10, 16))

这是我在表格中保存数据的代码

    $child = $this->child_section->create($input);


    $packages_ids = Input::get('package_id');
    $child->Packages()->sync($packages_ids);

在子模型中

 public function Packages()
{
    return  $this->belongsToMany('FoodPackage');
}

对于我使用 postgresql 的数据库

【问题讨论】:

  • 你可以发布你的模型吗?
  • 尝试添加 public $timestamps = true;在你的模型中
  • 您描述为子模型的那个。
  • 我已经从架构中删除了 created_at 列并且它可以工作。感谢您抽出宝贵时间约翰·罗卡..
  • 您不必删除 created_at 列。无论如何,如果这能解决你的问题。

标签: postgresql laravel


【解决方案1】:

你有添加方法 whitTimestamps();

例子:

$this->belongsToMany(Model::class)->withTimestamps();

https://laravel.com/docs/8.x/eloquent-relationships#has-many-through

【讨论】:

    猜你喜欢
    • 2018-08-14
    • 2021-04-09
    • 1970-01-01
    • 2021-11-02
    • 1970-01-01
    • 1970-01-01
    • 2018-03-18
    • 2016-02-14
    • 2017-02-18
    相关资源
    最近更新 更多