Tôi thiếu gì ở đây? Tôi đang làm việc với Rails 4.0.0 và thử Bootstrap 3.0.0rc1 mới. Tôi có một ứng dụng 'công thức hộp' đơn giản có mô hình Công thức và mô hình Danh mục cung cấp trường 'danh mục' trên Công thức. Trong công thức chế độ xem # chế độ xem mới, tôi có các trường sau được xác định:Rails 4: collection_select không chèn thuộc tính 'class'?
<h1>Create New Recipe</h1>
<%= form_for @recipe, html: { class: 'form-horizontal' } do |f| %>
<fieldset>
<legend>Main Information</legend>
<div class="form-group">
<%= f.label :name, "Recipe name", class: "col-lg-2 control-label" %>
<div class="col-lg-6">
<%= f.text_field :name, class: "form-control" %>
</div>
</div>
<div class="form-group">
<%= f.label :category_id, class: "col-lg-2 control-label" %>
<div class="col-lg-6">
<%= f.collection_select :category, Category.all, :id, :name, class: "form-control", prompt: "Select a category" %>
</div>
</div>
...
Trình trợ giúp text_field hiển thị thẻ được định dạng đúng, hoàn chỉnh với thuộc tính lớp. Tuy nhiên, không có vấn đề làm thế nào tôi xây dựng được chọn hoặc collection_select giúp đỡ, tôi dường như không thể có được Rails để cho tôi một có chứa một thuộc tính lớp. Mã ở trên mang lại cho tôi điều này:
<select id="recipe_category" name="recipe[category]"><option value="">Select a category</option>
...
Vì vậy, lời nhắc đến, nhưng có vẻ như một phần của hàm băm html_options được nhận dạng. Nhưng kiểu dáng Bootstrap không được áp dụng. Không quan trọng nếu tôi sử dụng niềng răng {} quanh lớp: "kiểm soát biểu mẫu" hay không. Không quan trọng nếu tôi sử dụng parens xung quanh collection_select params hay không. Xảy ra với helper chọn là tốt.
Có ai có thể tư vấn cho bạn không? Bạn có thấy điều này không?
Yeah, tôi đã cố gắng thay đổi lên thứ tự, thêm niềng răng và loại bỏ chúng, vv Có dường như không thành vấn đề. Tôi đang xem nó trong Chrome v28.0.1500.95, nhưng cùng một vấn đề hiển thị trong IE10. Tôi có thể tạo một ứng dụng mới trong Rails 3.2 và xác nhận nó ở đó ... – user2670683
Và bạn đã thử thêm dấu ngoặc ôm vào cả hai tùy chọn chưa? Giống như '<% = f.collection_select: category, Category.all,: id,: name, {prompt:" Chọn một category "}, {class:" form-control "}%>' –
Điều đó đã làm được! Vì vậy, html_options = {} không phải là một băm duy nhất, nhưng mỗi tùy chọn là băm riêng của nó? Cảm ơn bạn rất nhiều vì đã hỗ trợ, Alter! – user2670683