5

我正在尝试使用Country Gem,但在捆绑安装此 gem 后,有一些关于如何合并此 gem 的基本问题。

  1. 我需要创建一个新的控制器/模型来访问这些国家吗?
  2. 如何创建一个简单的选择下拉菜单以显示供用户选择的国家/地区列表?
  3. 所有国家/地区都存储在哪里?(我在 Gem 中看到了数据文件,但需要清楚如何将其带入我自己的应用程序)
4

2 回答 2

2

1)您不需要新的控制器/模型来访问国家

2) README 页面上有一个示例应用程序,向您展示如何使用表单和下拉菜单。

3)国家是应用程序内的商店。我相信country_select包含ISO 3166 gem 以获取国家/地区列表。您可以在countries.yaml文件中查看数据

如果想了解其他任何信息,我建议您查看示例应用程序。它提供了如何使用 gem 的一个很好的例子。

于 2014-09-24T05:47:20.003 回答
1

您无需创建新的控制器/模型即可使用 gem。

为了让您创建下拉菜单,只需安装country_selectgem(如文档中所述)

然后要使用它,只需在您的视图中执行此操作:

country_select(:your_model_name, :your_attribute_name)

要将其form_for与一些额外的参数(如 Bootstrap 类或选择的默认国家/地区)集成:

<%= form_for @message, url: contact_path, html: { :class => "form-horizontal " } do |f| %>

    <div class="form-group">
        <%= f.label :country, :class => "col-md-3 control-label" %>
        <div class="col-md-9">
            <%= f.country_select :country, ["United States"], {}, { :class => "form-control" } %>
        </div>
    </div>

    <%= f.submit "Submit", :class => "btn btn-default" %>

<% end %>

有关使用此方法的确切选项,请参见此处:

country_select(method, priority_or_options = {}, options = {}, html_options = {})

希望能帮助到你 !

于 2014-09-24T05:53:52.777 回答