【发布时间】:2013-09-05 01:32:15
【问题描述】:
这个问题比较简单,但不是很局部,因为它可以外推到很多控制器动作。
我有一个游戏控制器。
它(游戏)有许多行星。
到目前为止,我对每个控制器属于什么感到困惑。我认为必须有一种 Rails 方式来做到这一点,这会将行星的动作保持在行星控制器中,但我不知道该怎么做。
编辑(注意这甚至还不是游戏):
更具体地说,这里是对我遇到的问题的更好描述。我不确定如何编写代码(或者这是一种非常正常的方式)
- 单击页面上的播放按钮
- 游戏控制器中的动作运行一些逻辑
- 然后重定向到行星的索引页面
- 单击单个行星将执行显示操作并转到显示视图。
所以在这个例子中,我理解了前两点和最后一点。但我不明白进行重定向是否有意义
游戏控制器:
def play
game = Game.find(params[:id])
# do stuff
redirect planets_path(game)
end
行星控制器:
def index(game)
@planets = game.planets
end
def show
@planet = Planet.find(params[:id])
end
实例变量将在相应的视图中使用。此外,planets_path 将链接到路线文件中的行星索引控制器。
【问题讨论】:
-
Rails 用于使用 MVC 范例构建网站,它不太适合基于浏览器的视频游戏。
-
我将大量使用 JavaScript,但我的问题是如何将其融入 MVC 框架
-
这怎么太宽泛了?我想让它更具体,但对我来说似乎很具体
标签: ruby-on-rails model-view-controller controller ruby-on-rails-4