【发布时间】:2022-01-26 12:44:56
【问题描述】:
我对 Laravel 和迁移完全陌生。
我有 2 个表格:claim_items 和 claims。
claim_items 表有 2 列:
- claim_id 并指表声明的 id(1 个声明可能有 1 个或多个声明项,而 1 个或多个声明项只有 1 个声明)
- claim_type。
claims 表有很多列,其中:
- id(当然)
- claim_items_type
我需要编写一个将查询 claim_items 表的迁移,并且对于每个 claim_id(对于每个声明),它采用 claim_type 的第一个值并将该值分配给表声明中的列 claim_items_type (这样每个声明都有一个列 claim_items_type 与从 claim_items 表中找到的第一个值相对于对应的 claim_id)。
我尝试了很多变化,但最终我把一切都搞砸了,比以前更困惑了。
知道如何实现这一目标吗?
【问题讨论】:
-
嗨,您对 SO 并不陌生。所以你应该已经知道我们想要查看你尝试过的代码。但是没问题。您正在尝试的并不是 imho 的真正迁移。迁移应该创建/修改结构,而不是查询/种子表。这看起来更像是播种机,甚至是自定义命令。
-
没错,就像@GertB。说,这看起来像一个自定义命令,你应该把它放在你的控制器下。迁移文件将仅包含 laravel 语言中的 create table 和 drop table 命令,仅对创建数据库表结构有用。里面绝对没有数据。