【发布时间】:2009-02-05 03:02:07
【问题描述】:
我想在 Rails 中显示或隐藏表单中的一些字段,具体取决于表单中选择字段的状态。我(当前)不需要对字段进行第二次数据库查找,因此我试图将其全部限制在视图中。我已经勾勒出大纲,但我在实施细节方面遇到了一些麻烦。
我最初的想法是使用observe_field 并调用 Element.show 等,但后来我必须编写一个 Javascript 条件。这可能必须起作用,但如果可以的话,我想避免它。
另一种方法是使用observe_field 请求RJS 模板,并使用replace_html 插入字段。不错,但由于我使用的是form_for 块,我要么必须通过 RJS 模板一直传递表单实例才能做到这一点。
我还可以在每次传递时更新记录,并在新条件下显示表单,但这是我试图避免的。在视图中完成这一切会简单得多。
我在这里缺少什么?在 Rails 中,有条件的显示/隐藏表单的公认做法是什么?
【问题讨论】: