【发布时间】:2015-11-22 09:08:49
【问题描述】:
我花了很多时间在 sinatra 上进行开发,这对我来说效果很好,因为我只从事过小型项目,而且规模不是问题。现在我需要使用rails,结构对我来说有点混乱。我知道当我输入localhost:3000/images 时,rails 在routes.rb 中查找路线(例如get 'images#index'),然后进入控制器images,然后在图像中查找index 函数,最后找到@987654326 @view 并渲染它。
为什么所有这些更改都是必要的?难道它不能像 sinatra 那样简单(它似乎只在主文件中包含控制器步骤)吗?在一个答案中,我正在寻找为什么最好按照 rails 的方式来做,包括具体的原因、优点和缺点以及示例。
提前致谢!
【问题讨论】:
-
能否请反对者解释一下,以便我改进我的问题?
-
我没有投反对票,但我确实标记为主要基于意见,因为我相信它是。它是关于为什么拥有控制器是好的观点,就像它关于是否使用 Rails 或 Sinatra 的观点一样。这类问题被认为超出了 SO 的范围,因为它们更适合类似论坛的讨论环境,而不是像这样的问答环境。
-
我不想问哪个更好,而是为什么 rails 使用控制器。
-
简单的答案是它遵循 MVC 范式并且设计了控制器。这就是 Rails 有控制器的原因。如果你质疑为什么 MVC 有控制器,那么你基本上是在质疑 MVC 模式,这是一个见仁见智的问题。
-
好的,谢谢!这实际上很好地回答了我的问题。
标签: ruby-on-rails controller sinatra