【问题标题】:Build Gem or Plugin or Engine in rails 3在 Rails 3 中构建 Gem、插件或引擎
【发布时间】:2013-08-02 13:18:05
【问题描述】:

我想创建自己的 Gem,所以我在 Google 上搜索了“如何构建 rails 3 gem”,结果我在前 2 名中得到了以下结果

guides.rubyonrails.org/plugins.html‎ & edgeguides.rubyonrails.org/engines.html‎

它是插件和引擎。我做了更多的搜索,才知道

Rails 3.x 正在远离插件,一切都是宝石——包括 Rails 的所有组件。

所以我决定看看引擎是什么,然后做了一些搜索,发现

Enginex 包含在 rails 3.1 中。不再需要在新应用程序中将其用作宝石!

这让我更加困惑。我想知道我是否应该忽略插件、引擎而只专注于 Gem 开发。请指教。

【问题讨论】:

    标签: ruby-on-rails-3 ruby-on-rails-3.1 rubygems gem


    【解决方案1】:

    Enginex 包含在 rails 3.1 中。不再需要在新应用程序上将其用作宝石!

    这只是告诉您,在 rails 3.1 之前,您必须包含 enginex gem 才能创建 rails 引擎。对于 rails 3.1 及更高版本,这不再适用。

    here回答了你所有的问题。

    基本上,引擎非常类似于 Rails 应用程序。事实上,Rails 应用程序在某种程度上就是一个引擎。引擎可以“安装”到其他 Rails 应用程序中(例如Devise)。引擎包括完整的 MVC 架构供您使用。而 Gem 并不意味着包含控制器、视图和路由。 Gem 旨在为 Ruby 添加新功能。

    【讨论】:

    • 大多数情况下,实际实现的引擎实际上是作为 gem 发布的。
    • 是的,你是对的,因为 gems 通常以某种方式与 Rails 应用程序交互。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-10-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-30
    相关资源
    最近更新 更多