【问题标题】:Moving Eloquent Date Columns (created_at, updated_at, deleted_at) to a Related Table将 Eloquent 日期列(created_at、updated_at、deleted_at)移动到相关表
【发布时间】:2016-05-20 23:13:19
【问题描述】:

是否可以将 Laravel Eloquent 模型/表中的 created_at、updated_at 和 deleted_at 列移动到相关表中?

我问的原因是我想在无法更改架构的表上使用此功能。因此,我希望我可以与包含这些列的metadata 表建立一对一的关系。这将给我带来好处,而无需更改原始表格。

【问题讨论】:

  • 我猜你不能将这个字段移动到其他表中,但你仍然可以在你的父相关模型中更新时间class Comment extends Model { protected $touches = ['post']; public function post() { return $this->belongsTo('App\Post'); } }

标签: php database laravel laravel-5 eloquent


【解决方案1】:

您可以在模型中设置 public $timestamps = false;,但这只能解决一半问题,获得 1-1 关系仍需要更改架构。

我认为您可以与元数据建立多对多关系(即使您不会为每个帖子添加多个元数据),但这将使您能够拥有一个带有枢轴的 post_metadata 表。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-05-15
    • 1970-01-01
    • 2021-11-10
    • 2016-04-05
    • 1970-01-01
    • 2011-06-11
    • 2016-11-04
    相关资源
    最近更新 更多