我想要将地点与活动相关联,地点具有以下字段:国家、城市、地址和名称。我想做这样的事情,一旦你选择了一个国家和一个城市,就只会出现(在下拉列表中)属于那个城市的地方,有没有办法做到这一点?我的主要问题是变量:city_name,我知道我不能在这样的视图中创建变量,但我真的不知道如何创建它,也不知道如何临时保存它……如有任何帮助,我们将不胜感激:)
这段代码不起作用,它只是我想做的一个原型:
<%= form_for @activity, :html => { :class => "form-horizontal activity" } do |f| %>
<div class="transbox">
<h1><%= "Add Place To activity" %></h1>
</div>
<div class = "box_round">
<div class="row">
<div class="control-group col-lg-10">
<%= f.label "City Name", :class => 'control-label' %>
<div class="controls">
//variable :city_name does not exist
<%= f.text_field :city_name, :class => 'form-control' %>
</div>
<%= error_span(@activity[:resume]) %>
</div>
<% if !:city_name.nil? %>
<div class="control-group col-lg-10">
<%= f.label "City Name", :class => 'control-label' %>S
<div class="controls">
<% place_options = options_from_collection_for_select(@places.where(:city => :city_name).sort { |a,b| a.name <=> b.name }, :id, :name, selected: params[:place_id]) %>
<%= f.select(:place_id, place_options, {prompt: 'Select Sport'},
{prompt: 'Select Place', include_blank: false, class: "Place" }) %>
<%= link_to "Place doesn't exist yet?" , new_place_path %>
</div>
<%= error_span(@activity[:resume]) %>
</div>
<% end %>
</div>
</div>
</div>
<% end %>发布于 2014-11-15 05:31:33
您要查找的是一个称为AJAX请求的请求。这对你来说有点太多了,但它的要点是:
你也可以选择对地点做同样的事情,但概念/想法是相同的。为了获得参考的乐趣,请查看这个铁路广播:http://railscasts.com/episodes/136-jquery-ajax-revised
https://stackoverflow.com/questions/26938848
复制相似问题