在Rails中定义可空字段和外键时使用的脚手架

3

我正在学习Rails,但是我需要一点关于rails generate scaffold命令的帮助。

这是我想要使用的命令:

rails generate scaffold Expense user:??? name:string description:text

我希望description字段可以为空,users字段可以链接到另一个模型——在这种情况下,我想创建到用户的外键。 我正在使用devise身份验证框架。
我已经阅读了许多RoR开发人员尝试避免脚手架方法,而选择手动方法,但我的Web应用程序非常简单,我考虑采用脚手架方式。
1个回答

7

脚手架只生成迁移,然后您运行它。一旦生成文件,只需打开生成的迁移并调整任何需要特定约束的值。默认情况下,列设置为null,除非您另外指定,例如:

  create_table "slugs", :force => true do |t|
    t.integer  "sequence",                     :default => 1, :null => false
    t.string   "sluggable_type", :limit => 40
    t.string   "scope",          :limit => 40
    t.datetime "created_at"
  end

这是 friendly_id 插件生成的代码,可以看到他们指定了序列列不能为 null,而其他字段有其他限制。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接