gpt4 book ai didi

ruby-on-rails - ruby on rails 中的 Controller 和 Action 有什么区别?

转载 作者:数据小太阳 更新时间:2023-10-29 06:43:21 25 4
gpt4 key购买 nike

谁能告诉我 ruby​​ on rails 中 Controller 和 Action 之间的区别?

我从官方 Rails 指南中获取了这个定义:

A controller's purpose is to receive specific requests for the application. Routing decides which controller receives which requests. Often, there is more than one route to each controller, and different routes can be served by different actions. Each action's purpose is to collect information to provide it to a view.

我很困惑。请尽可能简单,因为我是新手!

谢谢!

最佳答案

Controller 只是 Ruby Class具有一系列 instance methods 的文件里面


基本解释

Rails Controller 基本上是保存操作(方法)的文件

每次访问 Rails 应用程序时,您都在向系统发送请求。 Rails 中的各种技术 route 请求特定的 action,您的代码可以使用传递的数据来执行某种 action(因此名字)。这些操作保存在 controllers 中以提供应用程序结构

因此,如果您访问 http://yourapp.com/users/new,它会告诉 Rails 在 users 中加载 new 方法> Controller 。您可以在 Controller 中执行任意多的操作,但是您必须告诉 Rails routes 系统它们在那里,否则它们将无法访问


正确的解释

Rails Controllers 只是 Ruby 类,存储一系列 Action

“操作”(实例方法)处理传递的数据 ( params ) 以创建 objects可以传递给模型,也可以在其他方法中使用

每当您向 Rails 发送请求(访问 URL)时,它首先使用 ActionDispatch中间件将您的请求发送到正确的类 (controller) 实例方法 (action),然后您的代码会对该数据执行某些操作

作为开发人员,您的工作是将正确的 Controller 与正确的模型连接起来,在正确的时间向用户呈现正确的数据

关于ruby-on-rails - ruby on rails 中的 Controller 和 Action 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20920100/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com