首先,我正在使用 Rails 3.0.9 和 ruby 1.8.7。\n我需要一些帮助,因为我无法验证并在屏幕上向用户完美显示它。
\n\n该模型:
\n\nclass Book < ActiveRecord::Base\n belongs_to :genre\n validates_presence_of :title, :genre\n attr_accessible :genre_id\nend\nRun Code Online (Sandbox Code Playgroud)\n\n表格:
\n\n<div class="field">\n <%= f.label :genre %><br />\n <%= f.collection_select(:genre_id, Genre.all(:order => :name), :id, :name, :prompt => \'Select\') %>\n</div>\nRun Code Online (Sandbox Code Playgroud)\n\n当我发送空白表单(默认选择提示值)时,错误消息完美地显示“流派不能为空”,但在表单中我收到如下 html:
\n\n<div class="field">\n <div class="field_with_errors">\n <label for="book_genre">Genre</label>\n </div>\n <br>\n <select name="book[genre_id]" id="book_genre_id">\n <option value="">Select</option>\n <option value="2">Gramatic</option>\n <option value="1">Terror</option>\n </select>\n</div>\nRun Code Online (Sandbox Code Playgroud)\n\n我也需要 div.field_with_erros 内的选择字段,因为我在 CSS 中定义了红色背景。
\n\n之后我尝试将 f.collection_select :genre_id 更改为 :genre
\n\n现在我在 div.field_with_erros 中得到了选择字段。Owwww Yeahhh …