gpt4 book ai didi

ruby-on-rails - 为什么 "rails generate migration"调用 "invoke activerecord"

转载 作者:数据小太阳 更新时间:2023-10-29 08:50:30 24 4
gpt4 key购买 nike

运行时:

 rails generate migration <someaction> field:type

我可以看到它正在执行两个操作:

  1. 调用调用active_record
  2. 创建迁移文件。

我完全理解为什么它会生成迁移文件,但为什么它会调用 ActiveRecord?这让我很困扰,因为如果我想手动创建迁移文件怎么办?我将如何模仿此调用(如果有必要......)?

最佳答案

MigrationGenerator 生成器:

1) 加载您的 ORM(在 Rails 中默认为 Active Record)以使其扩展正确的“ORM”::Migration 类(同样默认为 ActiveRecord::Migration)

2) 它本身是 NamedBase 生成器的扩展,它会查看您运行的 Active Record 是否应该将表名复数化。如果你运行就是这样

rails generate migration AddPartNumberToProducts part_number:string

rails generate migration AddPartNumberToProduct part_number:string

您在文件中得到相同的结果。

所以简短的回答是,您不需要调用 active_record 来手动创建迁移,但是如果您这样做并且您正在使用 Active Record,请确保您的表名在迁移文件中是复数形式。

关于ruby-on-rails - 为什么 "rails generate migration"调用 "invoke activerecord",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14225652/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com