[英]ActiveScaffold: How do I set the default value for a drop down list?
[英]How do I create a drop down in a Rails form where the user can change the default value?
我希望在我的Rails表單中有一個下拉菜單,用戶可以在添加訂單時選擇城市區域,例如“Marchmont”,“New Town”,“Baberton”等。 我希望一旦他們做出選擇,這將是以下時間的默認選擇,他們使用表單添加訂單(這樣他們不必繼續選擇它),而且他們可以改變隨時隨地選擇。 希望有道理。 我正在使用“簡單表單”寶石。 提前致謝! :)
@Steve
我將作兩個假設。
1.)您知道如何在rails模板引擎中創建表單。 2.)您了解如何使用Simple Form gem創建下拉菜單
因此,根據您實際想要完成的內容,您有幾個選項。 根據您簡要描述的內容,聽起來您有某種電子商務/結賬情況,您希望自動完成以使用戶更容易。
有幾種方法可以存儲這些數據。
保存用戶數據。
1.)將其保存在zone_of_last_order下的用戶模型上
2.)將其保存在用戶has_many
訂單的訂單模型上。 然后,您可以拉出第一個訂單所在的城市,然后選擇
我個人傾向於#2,因為您可能希望能夠將訂單與用戶緊密聯系,並且保存該信息兩次是多余的,因為您總是可以執行類似current_user.orders.first.district
或其他的操作,
在您構建表單的ERB中,您可以按照以下方式執行某些操作:
<%= simple_form_for(@order) do |f| %>
... other input fields
<% if current_user.orders.first %>
<%= f.input as: :select selected: current_user.orders.first.district %>
<% else %>
<%= ... your regular dropdown menu here without the default %>
<% end %>
... rest of your form
如果您可以選擇使用gems,那么我使用select2-rails獲得了良好的結果。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.