I have a controller with a number of static pages and I would ideally like to route them all with a wildcard.
Is it possible to do something like the following?
get 'static/:action'
I have a controller with a number of static pages and I would ideally like to route them all with a wildcard.
Is it possible to do something like the following?
get 'static/:action'
Why don't you just use the show
action:
#config/routes.rb
resources :static, param: :page, only: :show #-> url.com/static/:page
#app/controllers/static_controller.rb
class StaticController < ApplicationController
def show
render "#{params[:page]}"
end
end
This way, you can pass the "page" directly through the link and have it all handled by Rails:
<%= link_to "About", static_path("page") %>
You probably need something like get 'static/:action', to: 'static#show'
and then in your StaticController
show action render the correct static page based on the params[:action]
parameter.
See http://guides.rubyonrails.org/routing.html#defining-defaults for more.
You can route something like
get '*path', to: 'static#show'