Cómo utilizar la gem de los países.

Estoy tratando de usar la gem de los países , pero tuve algunas preguntas básicas sobre cómo incorporar esta gem después de que la instalé.

  1. ¿Necesito crear un nuevo controlador / modelo para acceder a los países?
  2. ¿Cómo creo una lista desplegable de selección simple para mostrar una lista de países para que un usuario seleccione?
  3. ¿Dónde están todos los países almacenados? (Vi el archivo de datos en la gem, pero necesito algo de claridad sobre cómo incluirlo en mi propia aplicación)

1) No necesita un nuevo controlador / modelo para acceder a los países

2) Hay una aplicación de ejemplo en la página README que muestra cómo usar formularios y menús desplegables.

3) Los países son tiendas dentro de la aplicación. Creo que country_select incluye la gem ISO 3166 para obtener la lista de países. Puedes ver los datos en el archivo countries.yaml

Si quieres saber algo más, recomiendo mirar la aplicación de ejemplo . Proporciona un buen ejemplo de cómo usar la gem.

No es necesario crear un nuevo controlador / modelo para trabajar con la gem.

Para que pueda crear un menú desplegable, simplemente instale la gem country_select (como se indica en el documento)

Entonces para usarlo, simplemente haz eso en tus vistas:

 country_select(:your_model_name, :your_attribute_name) 

Para integrarlo en form_for con algunos parámetros adicionales como las clases Bootstrap o el país predeterminado seleccionado:

 <%= form_for @message, url: contact_path, html: { :class => "form-horizontal " } do |f| %> 
<%= f.label :country, :class => "col-md-3 control-label" %>
<%= f.country_select :country, ["United States"], {}, { :class => "form-control" } %>
<%= f.submit "Submit", :class => "btn btn-default" %> <% end %>

Para conocer las opciones exactas que tiene con este método, vea aquí:

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

Espero eso ayude !