我對Ruby on Rails相當陌生,並且正在爲我父親的園林化公司建立一個客戶數據庫,作爲一個寵物項目。我遇到了一些代碼的障礙。Rails:檢查下拉列表中選定的值並與數據庫中的值進行比較
我有三個互相交互的表格:客戶端,發票和服務(嵌套在發票下)。在客戶表中,爲執行的每項服務(例如剪切,灌木,覆蓋物)存儲價格。如果客戶端沒有收到該服務,則該條目爲空。我以這種方式存儲價格,因爲每個客戶都根據其財產的大小向服務收取不同的設定金額。
向發票添加服務時,我想根據客戶表中設置的價格檢查在下拉列表中選擇的服務,如果它爲空(如果客戶沒有收到該服務)。例如,如果選擇了"Cut"
,我想比較一下(我認爲)@invoice.client.cut
我不完全確定從哪裏開始。當點擊提交按鈕時,你會如何運行這樣的代碼?
在此先感謝您的幫助!
這裏的形式看起來像在當前狀態:
<%= form_for [@invoice, @service] do |f| %>
<div class="control-group">
<%= f.label :name %>
<div class="controls">
<%= f.select(:name, options_for_select([['Cut', 'Cut'], ["Mulch", "Mulch"],['Bushes', 'Bush'], ['Spring clean-up', 'Spring'], ['Fall clean-up', 'Fall'], ['Snow removal', 'Snow']])) %>
</div>
</div>
<div class="control-group">
<%= f.label :category %><br>
<div class="controls">
<%= f.select(:category, options_for_select([["Maintenance", "Maintenance"], ["Seasonal", "Seasonal"]])) %>
</div>
</div>
<div class="field">
<%= f.label :quantity %><br>
<%= f.number_field :quantity %>
</div>
<div class="actions">
<%= f.submit %>
</div>
<% end %>
請問'<%@如果invoice.client.cut = =「Cut」%>在這種情況下工作?需要用'<% end %>'結束它,但它的工作原理與if/else條件一樣。請務必在百分比之後不要放入等號。 –