Mam zagnieżdżony zasób należący do wielu różnych modeli. Na przykład:Szyny: Pobieranie obiektu nadrzędnego z zagnieżdżonego zasobu
resources :users do
resources :histories, only: [:show]
end
resources :publications do
resources :histories, only: [:show]
end
resources :events do
resources :histories, only: [:show]
end
W HistoriesController
, chcę znaleźć obiektu nadrzędnego, choć mam kłopot myślenia suchym sposób sobie z tym poradzić. W tej chwili najlepsze, co mogę wymyślić to:
if params[:user_id].present?
@parent = User.find(params[:user_id])
elsif params[:publication_id].present?
@parent = Publication.find(params[:publication_id])
elsif . . . .
Mam dosłownie dziesiątki modeli mam do oddziału przez w ten sposób, który wydaje niechlujstwa. Czy istnieje lepsze (być może zapieczone) podejście, którego nie rozważam?
Zaoszczędzi mi to mnóstwo czasu i dużo linii. Dzięki! – nullnullnull