【发布时间】:2011-03-17 19:23:11
【问题描述】:
从 Rails 最佳实践的角度来看,在保存之前操作表单数据的最佳位置是什么?
例如,在联系表单上,我想确保所有数据都以大写形式保存(当人们在他们的“请联系我”表单提交中向你大喊大叫时,你不讨厌吗?:-))
- 在控制器中进行操作是否更好?我可以在创建中执行此操作,也可以将其移动到某种私有方法中,这将在保存/更新之前将对象的所有字符串属性大写?
或者
- 在模型 before_save 中做得更好吗? 对我来说应该在模型中完成它是有道理的,因为我可能希望所有记录都相同,无论我是在 rake 任务中还是通过 Web 界面对它们进行操作。
奖励:
如果我希望在我的所有模型上都使用它,并且能够根据具体情况覆盖默认值,我应该把它放在哪里?应用控制器? 在某些特殊情况下,您可能希望在不使用大写字母的情况下节省价值 - 即不大写的品牌产品(即 utorrent)或名称中应包含多个大写字母的姓氏(即爱尔兰和苏格兰名称,如麦当劳)
谢谢!
【问题讨论】:
标签: ruby-on-rails design-patterns