7

フォームに入力された国のデフォルト値を「米国」にしようとしています。シンプルフォームジェムとカントリーセレクトジェムを使用しています。

単純な形式の初期化子では、このデフォルトを設定します

  config.country_priority = [ "United States" ]

これにより、最上位の値が米国として正しくなりますが、デフォルト値は「ウガンダ」です。

_formビューで、次のことを行いました。

<%= f.input :country, :default => [ 'United States' ] %>

Railsを再起動しましたが、デフォルトでウガンダになりました。

私も次のことを試しました:

<%= f.input :country, :default => 'United States' %>

<%= f.input :country, :selected => 'United States' %>

次に何を試してみるべきですか?

4

8 に答える 8

4

これを試して、

<%= form.country_select :country, ["United States"] %>
于 2013-01-01T06:00:32.703 に答える
4

単純な形式のgem'country_select'でこれを試しました。それは私のために働いた。

= f.input :country,  priority: [ "Brazil" ]
于 2014-05-10T12:26:13.283 に答える
3

私はこれが古いスレッドであることを知っていますが、私は最近これを行い、他の人を助けるために共有したいと思いました。Rails 4.2.0、country_select(2.1.1)、simple_form(3.1.0)を使用しています。これは私のために働いた:

<%= f.input :country, selected: 'US' %>

ユーザーが選択を変更できないようにする場合は、次の:disabledように使用します。

<%= f.input :country, selected: 'US', disabled: true %>

他の回答のオプションを明確にするために、:priorityその国に高い優先順位を与えるだけです(つまり、その国をドロップダウンリストの一番上に配置します)。実際にはその国は選択されません。これがお役に立てば幸いです。

于 2015-04-29T18:05:12.673 に答える
1

これを使用していて、動作します。形の良い宝石を使用して、以下の行を追加します。

          <% f.input :address_country, :as => :country, :priority_countries => ["United States", "United Kingdom","Australia", "New Zealand"] %>         

注:配列内の国は、グローバル国全体の前に最初に表示される優先国です。

于 2013-08-06T14:16:12.170 に答える
1

国名の代わりに国コードを使用する必要があります。

<%= form.country_select :country, ["US"] %>
于 2015-03-18T12:24:57.217 に答える
0

結局、宝石を使用しなくなりました-複雑すぎます。定数COUNTRIESを作成し、代わりにそれを使用しました。

于 2013-01-03T21:03:18.520 に答える
-1

あなたはする必要があるだけです:

<%= f.country_select("user", "country_name", [ "United States" ]) %>

使用しているモデルuserの名前はどこにありますか。

于 2012-12-31T23:40:40.280 に答える
-1

この問題が発生しました。https://github.com/stefanpenner/country_selectの3fb63542c085148bcea73198037d37f15c6154d7githubリビジョンで動作しています:

<%= f.country_select :country, selected: 'US' %>
于 2014-08-11T15:30:46.050 に答える