我根本无法让 Carmen-Rails 工作,我真的不确定发生了什么。(那个特定的 GitHub 项目的文档记录很差。)简单地说,我正在使用演示应用程序中指定的代码,但在我的页面上什么也没看到——只有“请在上面选择一个国家”的文本。我看不到任何错误。这是我正在使用的代码。任何帮助将不胜感激。(顺便说一句,有没有比 Carmen-Rails 更好的替代品,或者至少有一个积极维护的替代品?)
用户.rb
<div id="order_state_code_wrapper">
<% parent_region ||= params[:parent_region] %>
<% logger.info("Parent region is #{parent_region}.") %>
<% country = Carmen::Country.coded(parent_region) %>
<% if country.nil? %>
<em>Please select a country above</em>
<% elsif country.subregions? %>
<%= subregion_select(:order, :state_code, parent_region) %>
<% else %>
<%= text_field(:order, :state_code) %>
<% end %>
</div>
这是我的控制器内的代码:
users_controller.rb
def subregion_options
render partial: "subregion_select"
end
这是我的用户模型中的代码:
用户.rb
attr_accessor :avatar, :country_code, :state_code
这是JavaScript:
_subregions_select.html.erb
$(function () {
console.log("klsjdfjf");
$("#user_country_code").on("change", function () {
var $selectWrapper = $("#user_state_code_wrapper"),
countryCode = $(this).val(),
url;
$("select", $selectWrapper).attr("disabled", true);
url = "/users/subregion_options?parent_region=#{country_code}";
$selectWrapper.load(url);
});
});
这是我添加到我的路线文件中的路线:
路线.rb
get "/users/subregion_options" => "users#subregion_options"
这是我的 subregion_options 部分:
<div id="order_state_code_wrapper">
<% parent_region ||= params[:parent_region] %>
<% logger.info("Parent region is #{parent_region}.") %>
<% country = Carmen::Country.coded(parent_region) %>
<% if country.nil? %>
<em>Please select a country above</em>
<% elsif country.subregions? %>
<%= subregion_select(:order, :state_code, parent_region) %>
<% else %>
<%= text_field(:order, :state_code) %>
<% end %>
</div>