ruby-on-rails-3.2 – 为什么carmen-rails没有默认保存状态?

我正在使用carmen-rails进行状态下拉.状态下拉状态在国家/地区更新时动态更新,但在编辑页面上,状态下拉列表不会认为已保存的状态值.有人可以帮忙吗?

仅供参考 – 我将保存的州值作为本地参数u传递

<div id="order_state_code_wrapper">
  <% parent_region ||= params[:parent_region] %>
  <% if parent_region.nil? %>
    <em>Please select a country above</em>
  <% else %>
    <% country = Carmen::Country.coded(parent_region) %>
    <% if country.nil? %>
       <em>Please select a country above</em>
    <% elsif country.subregions? %>
       <%= subregion_select(:user,:subregion_iso2,parent_region) %>
    <% else %>
       <%= text_field(:user,:subregion_iso2) %>
    <% end %>
  <% end %>
</div>

解决方法

我遇到了同样的问题并通过执行以下操作解决了它(在 https://github.com/jim/carmen-rails/issues/12的正确方向指向).它还不是最优的,但它可以完成任务.

<div id="shipping_tally_state_code_wrapper">
<div class="control-group carmen_state required">
  <label class="carmen_state_code required control-label" for="shipping_tally_state_code"><abbr title="required">*</abbr> Province</label>
    <div class="controls">
      <% parent_region ||= params[:parent_region] %>
      <% sub_region ||= params[:sub_region] %>
      <% country = Carmen::Country.coded(parent_region) %>
      <% if country.nil? %>
        <span class="help-inline display-id"><em>Please select a country above</em></span>
      <% elsif country.subregions? %>
      <%= subregion_select_tag('shipping_tally[state_code]',sub_region,country) %>
      <% else %>
      <%= text_field_tag('shipping_tally[state_code]',sub_region) %>
      <% end %>
    </div>
</div>
</div>

然后使用以下内容调用此部分:

<%= render partial: 'shared/forms/subregion_select',:locals => { :parent_region => f.object.country_code,:sub_region => f.object.state_code } %>

适用的js.coffee没有变化.

需要改进的领域:

>使用twitter bootstrap如此硬编码所有内容而不是放置一起包装.>目前不显示验证错误state_code(必需属性).>切换国家/地区时不保留州代码.通过将sub_region与parent_region一起传递给服务,这很容易实现.

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...