从命令行生成具有强制/必填字段(即不为空)的 Rails 模型

问题描述 投票:0回答:2

任何人都可以帮助生成带有必填字段/列(即 NOT NULL)的 Rails 模型吗?例如,

$rails generate model Role name:string <???>

我需要指定什么才能获得如下所示的“null: false”约束?

class CreateRoles < ActiveRecord::Migration
  def change
    create_table :roles do |t|
      t.string :name, null: false

      t.timestamps
    end
  end
end

提前致谢

ruby-on-rails
2个回答
50
投票

您不能在生成器命令中执行此操作。不过,将

null: false
添加到您的迁移文件中非常简单。


0
投票

如果您需要像我一样将现有列更改为

null: false

class MakeRoleNameNotNull < ActiveRecord::Migration
  def change
    change_column_null :roles, :name, false
  end
end
© www.soinside.com 2019 - 2024. All rights reserved.