2012-12-28 38 views
4

我使用卡門 - 軌道的狀態下拉。當國家更新時,狀態下拉動態更新,但在編輯頁面上,狀態下拉不是默認保存的狀態值。誰能幫忙?爲什麼卡門鐵路不會違約保存的狀態?

僅供參考 - 我把存儲的狀態值當地人參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> 

回答

3

我遇到同樣的問題,並通過執行以下操作(由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沒有變化。待提高

地區:

  1. 使用Twitter的引導使硬編碼的一切,而不是把 在一起的包裝。
  2. 當前不顯示 state_code(必需屬性)的驗證錯誤。
  3. 切換國家時不保留州代碼。通過將sub_region和parent_region一起傳遞給服務,這將很容易實現。
相關問題