あなたの次の構成は、あなたconfig/routes.rb
が望むものを与えるはずです:
resources :events do
resources :galleries
end
そして、これはあなたに与えるでしょうevent_galleries_path
。そして、これはあなたに与えるでしょうevent_galleries_path
。以下は、上記の構成が提供する 7 つのパスです。
event_galleries GET /events/:event_id/galleries(.:format) galleries#index
POST /events/:event_id/galleries(.:format) galleries#create
new_event_gallery GET /events/:event_id/galleries/new(.:format) galleries#new
edit_event_gallery GET /events/:event_id/galleries/:id/edit(.:format) galleries#edit
event_gallery GET /events/:event_id/galleries/:id(.:format) galleries#show
PUT /events/:event_id/galleries/:id(.:format) galleries#update
DELETE /events/:event_id/galleries/:id(.:format) galleries#destroy
名前付きルートの編集は次のとおりedit_event_gallery_path
です。
gallery
次に、 にメソッドを追加する代わりに、およびその他のアクションを にEventsController
作成します。edit
show
GalleriesController
# /events/:event_id/galleries/:id/edit
def edit
@gallery = Gallery.find(params[:id])
end
# /events/:event_id/galleries/:id
def show
@event = Event.find(params[:event_id])
# And your galleries, something like this
@galleries = @event.galleries.find(params[:id])
end