以下がコードです。
#top.html.slim ... li.result class=(@type == 'characteristics' ? '' : 'hide') ul.search_tab.clearfix - @characteristics.each do |characteristic| li = link_to characteristic.name, "/projects/characteristics/#{characteristic.slung}"
#top.controller def index ... @characteristics = Characteristic.searches ... end
#project_controller def index @canonical_url = "/projects/" @path_info = {} @skills = Skill.searches if params[:characteristic] @characteristic = params[:characteristic] @canonical_url = "/projects/characteristics/#{@characteristic}/" @path_info["category"] = "characteristics" @path_info["slung"] = @characteristic #nilだから実行すらされない end end ...
#route.rb ... scope '/characteristics' do get '/', to: 'projects#index' get '/:characteristics', to: 'projects#index' get '/:characteristics/:id', to: redirect('/projects/characteristics/%{characteristics}/detail/%{id}/') get '/:characteristics/detail/:id', to: 'projects#show' end
pryでindexアクションの場所で止めてparams
を打つと<ActionController::Parameters {"controller"=>"projects", "action"=>"index", "characteristics"=>"国籍不問"} permitted: false>
とでてきてcharacteristics
が認知されています。
しかし、params[:characteristic]
と打つとnil
になります。
何か間違いでもあるのでしょうか?
よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/12/10 13:00
2021/12/10 13:02
2021/12/10 13:08
2021/12/10 13:24