【发布时间】:2012-12-11 20:54:15
【问题描述】:
我的项目是在 Rails 中制作一个带有 html5 游戏的网站。
我有一个名为 games_controller 的控制器,我想将 /games/name-of-my-game 与每个 html5 游戏进行匹配。我创建了一条路线,与 games_controller 功能相匹配,但这是我的问题:
我希望我的 html5 游戏的一切都是“即插即用”的,我的意思是开发它们超出 Rails,然后只需将其复制/粘贴到我的应用程序中,一切正常(引用图像,.js文件和所有)。但我也希望我的游戏视图位于我的应用程序布局中。这是我尝试过的:
把它放在/public目录下,在我games_controller的
show方法里做render "/public/path_to_my_game"。这会破坏所有引用,例如<script type="text/javascript" src="some_script.js"></script>,因为 URL 不是 */path_to_my_game* 而是 /games/name-of-my-game。将它放在 /public 目录中,但在我的
show方法中使用redirect_to而不是render。引用没有损坏,但布局消失了(我可能错了,但布局被控制器卡住了,而不是静态文件)。把它放在 app/views/games 中,但这看起来很难看,所以我很快停下来:)。
有人有想法吗?
【问题讨论】:
-
如果您只使用 rails 作为基本的布局包装器和路由器,我强烈建议您查看Sinatra。
-
您尝试过放入 app\assets\javascripts 并使用 javascript_include_tag 吗?
-
macek:老实说,我已经制作了这个网站的一部分,所以我现在会坚持下去(我想学习技术^^) AntarrByrd:作为我对 macek 帖子的评论,我想尽可能避免拆分我的游戏逻辑(一个文件夹中的一些文件,另一个文件夹中的一些文件......)。
标签: ruby-on-rails ruby-on-rails-3 html