Я смущен тем, как сортировать маршруты для моего действия show. На данный момент, если я выбираю по конкретной рекомендации для «шоу» этого, URL говоритПользовательские маршруты с атрибутом id
/рекомендация/1
где 1 является руководящим принципом ID
Я хотел бы это сказать
/название
(где т его название указывается в руководстве). Я смущен, как управлять этим в моих маршрутах. На данный момент мои маршруты имеет
get 'guideline/:id', to: 'guidelines#show', as: :seeguideline
, но это только показывает, руководящее/1, как я уже говорил, так что я понимаю, что я делаю что-то неправильно
мой взгляд ссылки на это с
<%= link_to guideline.title, seeguideline_path(id: guideline.id) %>
шоу действие в guidelines_controller.rb является
def show
@guideline = Guideline.where(title: params[:title]).first
respond_to do |format|
format.html # show.html.erb
format.json { render json: @guideline }
end
end
маршруты
ActiveAdmin.routes(self)
devise_for :admin_user, ActiveAdmin::Devise.config
get "guidelines/topic"
get "guidelines/topichospital"
get "guidelines/topicspecialty"
get "guidelines/favourite"
devise_for :users
devise_scope :user do
get 'signup', to: 'devise/registrations#new', as: :register
get 'login', to: 'devise/sessions#new', as: :login
get 'logout', to: 'devise/sessions#destroy', as: :logout
get 'edit', to: 'devise/registrations#edit', as: :edit
put 'users' => 'devise/registrations#update', :as => 'user_registration'
get 'about', to: 'about#about', as: :about
end
resources :guidelines
get 'guidelines', to: 'guidelines#index', as: :guidelines
get 'favourites', to: "favourites#show", as: :favourites
get 'topics', to: 'guidelines#list', as: :topics
get 'hospitals', to: 'guidelines#listhospital', as: :hospitals
get 'specialties', to: 'guidelines#listspecialty', as: :specialties
root :to => 'guidelines#index'
get '/:id', to: 'profiles#show', as: :myprofile
get '/:title', to: 'guidelines#show', as: :seeguideline
спасибо - что все это имеет смысл. Но это не приводит меня в нужное место (т. Е. Собирается/заголовок, но не загружает руководство) - он говорит, что «страница, которую вы ищете, не существует» – tessad
вы можете обновить свой вопрос с помощью своих маршрутов и вашего контроллера правил ? – jvnill
обновили их сейчас – tessad