我已經使用/ stackoverflowed了幾個小時,但沒有找到任何與我的要求相匹配的東西。我在rails中是新手,我正在使用rails 4.2.4開發一個bug跟蹤系統。在這裏我有一個名爲Bug的類。在創建錯誤時,我有兩個下拉菜單,它們將使用模型中的數組值填充。我的模型是這樣的:Rails模型中的數組中的兩個從屬下拉菜單項
class Bug < ActiveRecord::Base
belongs_to :creator, :class_name => "User", :foreign_key => "creator_id"
belongs_to :developer, :class_name => "User", :foreign_key => "developer_id"
TYPE = ['Feature', 'Bug']
FEATURE_STATUS = ['New', 'Started', 'Completed']
BUG_STATUS = ['New', 'Started', 'Resolved']
validates :title, :presence => true, :uniqueness => true
validates :status, :type, :presence => true
has_attached_file :screen_shot
validates_attachment_content_type :image, :content_type => ["image/jpg", "image/jpeg", "image/png", "image/gif"]
end
有一個從_form.html.erb文件中的一些代碼,這將顯示下拉選項:
...
...
...
<div class="form-group">
<%#= f.label :bug_type, class: "col-sm-2 control-label" %>
<%= f.label :bug_type, t('.bug_type') + ":" %>
<%= f.select :bug_type,
Bug::TYPE,
:prompt => "Select bug type:"
%>
</div>
<div class="form-group">
<%#= f.label :status, class: "col-sm-2 control-label" %>
<%= f.label :status, t('.status') + ":" %>
<%= f.select :status,
Bug::FEATURE_STATUS,
:prompt => "Select status:"
%>
</div>
...
...
...
在當前的時間,我的代碼顯示的是數組的值第一個下拉菜單中的Bug :: TYPE,第二個下拉菜單中的Bug :: FEATURE_STATUS的值。我的問題是如何填充第二個下拉數組值取決於第一個下拉的值?也就是說,如果用戶從第一個下拉列表中選擇一個值「Feature」,則第二個下拉列表應該顯示FEATURE_STATUS數組的值。如果用戶從第一個下拉列表中選擇一個值「Bug」,則第二個下拉列表應該顯示數組FEATURE_BUG的值。
我是新來的堆棧流,這是我在這裏問的第二個問題。任何幫助將不勝感激。提前致謝。