[英]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.