我喜欢Rails如何将每个控制器放在它自己的文件中并自动加载,我正在尝试为我的Sinatra网站做同样的事情。
例如,我有“用户”页面,users/login
,users/logout
等等,我想要做的就是分开所有这些,以及其他页面,如新闻,admincp等等到他们自己的文件中。
当我的Sinatra网站启动时,我如何自动加载它们?
答案 0 :(得分:3)
这就是我用我的项目完成这项工作的方式。
我将所有“控制器”放在一个目录中,然后使用以下代码创建了一个名为init.rb
的文件:
Dir.glob(File.dirname(__FILE__) + '/*.rb').each do |controller|
require(controller)
end
然后在我的主app文件中输入以下代码:
__DIR__ = ::File.dirname(__FILE__)
require __DIR__ + '/controllers/init'
希望这有帮助。