在 Ruby 上 Rails 中,有没有办法在我的视图中路由到多个文件
Is there a way to route to multiple files in my views in Ruby on Rails
我正在制作一个专门用于 flash 和 unity 游戏的网站,以便在 Rails 上学习 Ruby 实践,我想知道是否有一种方法可以路由到一个文件夹中的所有文档无需将它们一一输入到路由文件中。不知道是不是我眼瞎了,不过我一直在到处寻找答案。
例如我必须输入:
得到 'game1',到:"games#game1"
在单个游戏的路由文件中,但我希望能够添加整个库,而不必一个一个地输入它们。
这就是可变段的用途。你应该使用像
这样的东西
get "games/:id" => "games#show"
并通过 params[:id]
查找游戏。
如果我错了请纠正我,但您的游戏视图文件夹中有多个文件(游戏)并且您想通过单个操作进行路由?
所以,基本上,在您的 routes.rb 中会有:
get "games/:game_number" => "games#show"
然后,在您的 games_controller.rb
def show
# ...
render "games/#{params[:game_number]}"
end
因此,在这种情况下,如果您点击 /games/first,它将呈现视图 games/first。html.erb
这不是一个好的做法,因为整个过程中有几个陷阱,但是,考虑到这一点,如果我有正确的场景,这应该可行:)
我正在制作一个专门用于 flash 和 unity 游戏的网站,以便在 Rails 上学习 Ruby 实践,我想知道是否有一种方法可以路由到一个文件夹中的所有文档无需将它们一一输入到路由文件中。不知道是不是我眼瞎了,不过我一直在到处寻找答案。
例如我必须输入: 得到 'game1',到:"games#game1" 在单个游戏的路由文件中,但我希望能够添加整个库,而不必一个一个地输入它们。
这就是可变段的用途。你应该使用像
这样的东西get "games/:id" => "games#show"
并通过 params[:id]
查找游戏。
如果我错了请纠正我,但您的游戏视图文件夹中有多个文件(游戏)并且您想通过单个操作进行路由?
所以,基本上,在您的 routes.rb 中会有:
get "games/:game_number" => "games#show"
然后,在您的 games_controller.rb
def show
# ...
render "games/#{params[:game_number]}"
end
因此,在这种情况下,如果您点击 /games/first,它将呈现视图 games/first。html.erb
这不是一个好的做法,因为整个过程中有几个陷阱,但是,考虑到这一点,如果我有正确的场景,这应该可行:)