0
我對Ruby很新,可能做的不正確,但如何使一個控制器操作沒有路由?控制器在軌道上的紅寶石軌跡沒有路徑 - 有可能嗎?
我需要此控制器僅用於其他控制器的REDIRECT。 見下面
def redirect_to_correct_stage
case @lession_stats.stage
when 'stage1'
puts "Redirecting to stage1"
redirect_to :action => :stage1
return
when 'stage2'
puts "Redirecting to stage2"
redirect_to :action => :stage2
return
when 'stage3'
puts "Redirecting to stage3"
redirect_to :action => :stage3
return
else
redirect_to root_path, :alert => t(:error_unknown_stage)
end
末
我的主要作用是redirect_to_correct_stage,並有正確的路徑(「/字」)和我需要重定向改正基於模型的價值的行動。
一切正常,但現在人可以直接移動到stage3使用('/ stage3') 當然,我可以添加更多的檢查stage3行動,但我不想檢查兩次。
我該怎麼辦?
如果你只需要調用額外的邏輯來說'stage2',那麼爲什麼不在你的控制器上有一個受保護的方法,調用它,然後在控制器方法的末尾相應地重定向 –