ruby on rails - options_for_select - Carriles de todos los carriles
select in ruby on rails (4)
Además de @steel y @awenkhh, recomiendo agregar lo siguiente a la acción del controlador de esa ruta
respond_to do |format|
format.html
# other formats you already support
format.all { render text: '''' }
end
De lo contrario, terminará con algunos ActionView::MissingTemplate: Missing template
errores de ActionView::MissingTemplate: Missing template
para formatos que no esperaba.
[rant] Particularmente útil para aquellas personas que intentan vectores de ataque erróneos alrededor de /wp-admin/css/wp-admin.css
y similares. Parece que recibo alrededor de 100 solicitudes de /wp-admin/*
al día, de personas súper molestas que aparentemente me gustaría que obtuviera un plan de cuenta Rollbar más costoso. [/ Rant]
Estoy usando rieles 3.0.14, y estoy construyendo route.rb usando el estilo ingenioso. Me gustaría tener una ruta comodín que detecte todas las solicitudes que no coincidan con ninguna de las rutas indicadas.
¿Cuál es la forma apropiada de construir tal ruta?
No es obligatorio usar exactamente "ruta" en la declaración de match ''*path''
. Puedes poner un token allí:
get "*string1"
o
get "*string2"
Rails asignará su consulta HTTP real al parámetro nombrado después de su token, por ejemplo:
get "*user" => "users#show"
en la consola:
Started GET "/john" ....
Processing by UsersController#show as HTML
Parameters: {"user"=>"john"}
Puede usar más de un asterisco, diga get "*id*user"
. Pero en este caso obtendrá un resultado impredecible, ya que Rails procesa 2 o más asteriscos "de una manera intuitiva"; para obtener más información, visite http://guides.rubyonrails.org/routing.html#route-globbing-and-wildcard-segments
Para Rail 4, necesita especificar el tipo de solicitud:
match "*path", to: "application#custom_action", via: :all
Como han dicho otros, ponga esto en la parte inferior de su archivo de rutas.
poner
match ''*path'' => ''your_controller#your_action''
al final del archivo route.rb. Esto es importante, ya que las rutas se recorren de arriba hacia abajo.
Véase también http://guides.rubyonrails.org/routing.html -> 3.10