【问题标题】:What exactly are the "components" of Rails (ActiveRecord, ActionController, etc.)?Rails 的“组件”到底是什么(ActiveRecord、ActionController 等)?
【发布时间】:2011-09-27 03:27:41
【问题描述】:

我刚开始学习 Rails 和 Ruby。 http://guides.rubyonrails.org/getting_started.html 的 Ruby on Rails 指南说 Rails 由许多不同的“组件”组成。其中一些组件,例如 ActiveRecord 和 ActionController,我在我的 Rails 应用程序中遇到过(分别在模型和控制器中)。

相关语法(“class Model

更新:所以我找到了所有的内置模块和类。在我的服务器上,ActiveRecord 模块的 Base 类的路径(例如)是:

/usr/lib/ruby/gems/1.8/gems/activerecord-3.0.9/lib/active_record

但我仍然不知道为什么我们可以在我们的模型和控制器中引用这些模块和类而不首先使用 Ruby 的 require 方法。

【问题讨论】:

    标签: ruby-on-rails


    【解决方案1】:

    Rails components 是默认包含在application.rbrequire rails/all 中的模块:

    • action mailer 是用于设计电子邮件服务层的模块
    • action pack 是一个用于处理和响应网络请求的模块(包括 action_controller、action_dispatch
    • action view 是一个用于处理视图模板查找和渲染的模块
    • 活动作业是一个用于声明作业并使它们在各种排队后端上运行的模块
    • 活动模型是从 Rails 2 Active Record (validates :name, presence: true) 中提取的非数据库功能
    • 活动记录将类连接到关系数据库表(迁移、关联
    • 主动支持包含所有 Ruby 扩展 ([].blank?)

    【讨论】:

      【解决方案2】:
      • 活动记录
      • 动作包
      • ActionMailer
      • ActiveModel
      • 活动资源
      • 主动支持

      转到此页面Github Rails Page,在每个页面下,您都有关于其用途的详细说明。

      【讨论】:

        【解决方案3】:

        Rails 组件:

        • Actioncable - (Rails 5.0)
        • 行动邮件
        • 动作包 * 抽象控制器 * 动作控制器 * 行动调度 * 行动包
        • 动作视图
        • 活动工作
        • 活动模型
        • 活动记录
        • Activestorage - (Rails 5.2)
        • 主动支持
        • 动作文本 - (Rails 6)

        【讨论】:

        • 动作文本 - (Rails 6.0)
        【解决方案4】:

        在您的 rails 应用程序中,这些都是 required。例如,如果您在应用程序中通过script/rails command 运行rails 命令,则script/rails 需要config/boot,后者需要bundler,然后执行Bundler.setup,这需要Gemfile 中的所有gem。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2011-02-15
          • 2020-05-17
          • 2019-12-28
          • 2020-05-02
          • 1970-01-01
          • 2011-11-18
          • 1970-01-01
          相关资源
          最近更新 更多