Ruby on rails 我什么时候需要为rails制作新的控制器/模型?

Ruby on rails 我什么时候需要为rails制作新的控制器/模型?,ruby-on-rails,ruby,model-view-controller,Ruby On Rails,Ruby,Model View Controller,我一直在通过Hartl的课程学习rails,并通过Kehoe学习rails。这两个指南都很好地描述了MVC模型,但我很难理解何时创建新的控制器和模型,以及为什么需要创建新的控制器和模型 在整个教程中,他们通常会制作新的控制器和模型。当我阅读它时,它似乎是有意义的,但当我现在试图自己制作一个网络应用程序时,我突然感到极度失落 我从其他资料中了解到,在创建控制器和模型时,并不一定意味着每个控制器都要创建一个模型。这只会让我更加困惑,因为我一直认为MVC模型是一种相互结合的三元组 如果你能举例说明这个

我一直在通过Hartl的课程学习rails,并通过Kehoe学习rails。这两个指南都很好地描述了MVC模型,但我很难理解何时创建新的控制器和模型,以及为什么需要创建新的控制器和模型

在整个教程中,他们通常会制作新的控制器和模型。当我阅读它时,它似乎是有意义的,但当我现在试图自己制作一个网络应用程序时,我突然感到极度失落

我从其他资料中了解到,在创建控制器和模型时,并不一定意味着每个控制器都要创建一个模型。这只会让我更加困惑,因为我一直认为MVC模型是一种相互结合的三元组


如果你能举例说明这个问题,那就太棒了。

类比很简单

模型可用于您的业务逻辑。您可能需要在数据库中保留的逻辑类型,
用户
信息,
产品
的详细信息,博客的
帖子

对于每个这样的数据模型,都要创建一个模型

控制器可用于将客户端(
视图
)与业务逻辑(
模型
)关联起来,无论是否进行任何预处理。您可能需要一个
userscoontroller
来管理注册和注册。
通过这种关系,可以说
用户
模型具有相应的
用户控制器

但情况并非总是如此。考虑管理会话,你可以有一个<代码> SESSIONS控制器,它自己管理登录、cookie处理等;但是它仍然可以与
用户
模型对话(它没有
会话
模型)。
另一个例子是,您可以使用一个
StaticPagesController
,您可以使用它来创建文章(从
Post
模型)。您可能根本不需要
PostsController

此外,控制器可以与任意数量的模型对话,具体取决于应用程序与用户的交互方式以及流程的流程

REST约定规定您有一个资源,您有一个模型,一个相应的控制器,该控制器依次与不同的HTTP谓词对话,将它们映射到不同的操作,如
new
create
destroy
edit
update
。但这只是基本的
CRUD
。而这通常不是一个好的应用程序的全部内容