微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ruby-on-rails – 对于Rails应用程序,我应该在数据库和模型中进行验证吗?

我来自一个尽可能完全定义数据库模式的背景,例如:字段长度,非空,认值,复杂的参照完整性等.使用Rails,我必须在模型中完成所有这些以获得智能验证.那么我也要复制数据库定义中的所有内容吗?

例如,如果电子邮件是必填字段,我是否添加验证:email,:presence =>对模型AND为真:null =>迁移错误

字符串怎么样?如果我有:length => {:maximum => 50}在模型中,我是否也想要:limit =>迁移50?

我是否将外键添加数据库以强制实施参照完整性?

或者是在模型中尽可能多地执行“Rails方式”并将数据库保留为“哑”持久性引擎?

解决方法

绝对添加:null =>假.否则你的DBA可能会伤害你.您的Rails应用程序并不是唯一触及数据库的应用程序.

最大长度为您提供增益DB内存.绝对设置最大长度,但一定要添加rails验证.如果不是,您可能会遇到奇怪的应用程序错误.

外键很好但在rails应用程序中使用较少

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐