我上周开始学习 Ruby,今天开始学习 Rails,所以请耐心等待。我看到 Rails 带有生成器,允许您生成模型/控制器甚至模型+控制器+视图捆绑作为“脚手架”。这是我感兴趣的。
但是,我有一个问题。如何设置列的数据库选项?
例如。要生成用户表,我会这样做:
rails g scaffold users uuid:binary name:string email:string password:binary registered_on:date number:integer default:string
现在,如果我是个正直的人,并且对仅在模型/控制器中进行验证不满意,但又想做数据库级别的限制,该怎么办。如果我想email
最多 50 个字符,并且number
要自动递增,并且所有字段都不允许为 NULL,并且default
字段必须具有默认值“foo”,该怎么办。有没有办法将这些要求传递给生成器命令?
我知道可以在 rake db:migrate 中使用的 .rb 文件中设置这些选项,但是使用 1 个命令传递值会更容易。