在Rails中验证失败时,选择提示选项会消失

Eri*_*ick 7 select ruby-on-rails prompt

让我先说我是Rails和StackOverflow的菜鸟,所以请放轻松我.我在开发箱上使用Rails 2.3.8和sqlite3.

我使用以下方法在表单中创建了一个选择下拉列表:

<%= select( "communication", "gig_id", { "Add New Gig" => "new"}, {:prompt => "-- Select Gig --"}, :onchange => "toggle(this, 'gigInfo')") %>
Run Code Online (Sandbox Code Playgroud)

但是,当表单中的其他内容未通过验证并重新呈现"新"页面时,我的提示消失,剩下的唯一选项是"添加新的Gig"选项.我的所有表格都是如此,我似乎无法找到任何答案.

我的控制器使用基本的脚手架,所以我有点不知所措.任何帮助将不胜感激.

Jel*_*Cat 12

你的观察是准确的,并且你敏锐地观察到:include_blank即使:prompt不这样做仍然存在.

您可以通过设置:include_blank为用于提示的字符串来实现所需的结果(它不需要是布尔值).

:prompt似乎只有当Rails没有提供给定字段的值时才会出现.当你的应用程序重新呈现的new观点,还有就是提供这一领域,因为它创建了通信模型的实例的值.(它无法保存该实例,但看起来该实例已gig_id设置其字段.)