Ruby on rails 3.2 有哪些方法可以编写可在rails中使用的库?它们是如何工作的?如何";安装";他们?

Ruby on rails 3.2 有哪些方法可以编写可在rails中使用的库?它们是如何工作的?如何";安装";他们?,ruby-on-rails-3.2,Ruby On Rails 3.2,很抱歉给你起了个标题,但我找不到确切的词语来解释这个。 在rails中,当我必须选择将外部库放置在何处时,我有点困惑 例如,如果我想准备一个gem,其中包含许多我可以在所有应用程序中共享的助手,它应该做什么?它应该在我的应用程序/助手目录下安装这些助手吗 实际上,这些都是我知道可以放置外部库的目录: 供应商/资产 应用程序/助手 供应商/插件[,如果我没有错的话,它已经被弃用了 图书馆/资产 库/任务 如果我想创建一个可以在控制器中使用的方法(如果控制器包含某些内容),我应该将这样的文件放在

很抱歉给你起了个标题,但我找不到确切的词语来解释这个。 在rails中,当我必须选择将外部库放置在何处时,我有点困惑

例如,如果我想准备一个gem,其中包含许多我可以在所有应用程序中共享的助手,它应该做什么?它应该在我的应用程序/助手目录下安装这些助手吗

实际上,这些都是我知道可以放置外部库的目录:

  • 供应商/资产
  • 应用程序/助手
  • 供应商/插件[,如果我没有错的话,它已经被弃用了
  • 图书馆/资产
  • 库/任务
如果我想创建一个可以在控制器中使用的方法(如果控制器包含某些内容),我应该将这样的文件放在哪里呢

如果我创建了一个可以在rails中使用的gem,它应该在哪里安装文件

我有点迷路了,我总是创建一个文件,但我觉得有点不舒服,因为我总是不知道应该把它放在哪里

编辑1:


我还想添加一个特例,在这里放置一个用javascript编写的库,该库的目录结构几乎不绑定在一起,因此不能将css/图像移动到不同的目录中。你是怎么处理的?我在vendor/assets中创建了一个目录以使其正常工作,但我不知道这是否是解决此问题的最佳方法。

事实上,在阅读IRC chat并获取相关信息时,我了解以下几点:

    供应商/资产应用于完全“轨外”的库,例如与C++库或类似的东西交互的东西。
  • app/helpers仅用于此应用程序的帮助程序
  • 供应商/插件已被弃用
  • lib/assets用于您希望使用的库(如javascript库),这些库不希望存储在gem中(或者不作为gem发布)
这肯定不是一个完整的答案,但实际上是我找到的唯一答案

关于宝石以及它们应该如何建造,我将提出一个新的问题