【问题标题】:Confused on MVC in rails对 Rails 中的 MVC 感到困惑
【发布时间】:2011-01-28 09:31:20
【问题描述】:

我对在 Rails 中写什么有点困惑。

理想情况下,我将拥有一个视图、一个控制器和一个模型。模型应该具有所有的业务逻辑。但是在我见过的大多数 Rails 应用程序中,我见过大部分业务逻辑都写在 Controller 文件中。

我们应该称他们为控制器吗?那么视图模型呢。我说的是与视图关联的数据模型。当我说这句话时,我的脑海中浮现出 JSF 和 Swing。每个视图都有一个与之关联的数据模型,通常是一个 bean。但是在这里,我们没有这样的东西还是我无知?那么服务层呢,我如何在我的 Rails 代码中实现它们。

总结我的问题

  1. 为什么是业务逻辑 大部分都是用Controllers写的 轨道代码?这是一个好习惯吗?
  2. 如何将视图模型合并到 rails,即视图的数据模型?
  3. 在 Rails 应用程序中的何处放置服务层?

谢谢

【问题讨论】:

  • 一般业务逻辑在模型中。你能举出你在控制器中看到大量业务逻辑的例子吗?

标签: ruby-on-rails model-view-controller service


【解决方案1】:

总结一下我的回答:

  1. Ruby on Rails 的新标准是将业务逻辑置于模型中。这也称为胖模型瘦控制器。

  2. Rails 不强制实施这种单一数据模型的方法,但您可以选择实施它。基本的脚手架做了类似的事情。

  3. 服务层很可能存储在机架中间件中。这允许对请求和响应进行一般过滤。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-11-21
    • 1970-01-01
    • 2012-05-21
    • 2017-07-31
    • 2014-07-08
    • 2017-02-28
    • 2013-07-04
    • 1970-01-01
    相关资源
    最近更新 更多