设置:null =>创建表迁移时默认行为 false

发布于 2024-12-10 18:30:42 字数 112 浏览 0 评论 0原文

我有一个迁移,用于创建一个包含大约 15 个字段的表,并且所有字段都不应该为空。我想知道是否有什么技巧可以立即做到这一点,而不是声明 :null => false 对于每个字段。

I have a migration for creating a table with around 15 fields in it and all of them should not be null. I was wondering if is there any trick to do that at once instead of declaring :null => false for every single field.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

吻风 2024-12-17 18:30:42

实际上,您可以使用 with_options 来做到这一点。它最常用于路由和设置验证,但它实际上适用于任何采用选项哈希作为最后一个参数的方法。因此,类似于:

create_table :foo do |t| 
  t.with_options :null => false do |opt|
    opt.string :column_name
    opt.string :other_column_name
  end
end

这是有关 Object#with_options 的文档

Actually, you can do this using with_options. It's most commonly used in routes and setting up validations, but it will actually work on any method that takes an options hash as the last argument. So, something like:

create_table :foo do |t| 
  t.with_options :null => false do |opt|
    opt.string :column_name
    opt.string :other_column_name
  end
end

Here's the documentation on Object#with_options.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文