Ruby on rails 在Rails 3应用程序中绑定器组的正确用法是什么

Ruby on rails 在Rails 3应用程序中绑定器组的正确用法是什么,ruby-on-rails,bundler,Ruby On Rails,Bundler,我发现在Rails中如何使用绑定器组的描述与我在绑定器组示例中看到的内容之间存在脱节 据推测,Rails通常从默认组以及与环境同名的组加载gem。然而,我经常看到这样的例子,它们似乎只是将事物放在任意命名的组中,不知何故,它们只是起作用。那么,真实的故事是什么,或者我错过了什么 例如,这个例子()说在a:shoulda组中列出'shoulda'gem,并说这是可行的。然而,需要这样做的环境将是“测试”,也许是“开发”。是什么导致“shoulda”组中的gem被加载 在其他示例中,例如,我看到cu

我发现在Rails中如何使用绑定器组的描述与我在绑定器组示例中看到的内容之间存在脱节

据推测,Rails通常从默认组以及与环境同名的组加载gem。然而,我经常看到这样的例子,它们似乎只是将事物放在任意命名的组中,不知何故,它们只是起作用。那么,真实的故事是什么,或者我错过了什么

例如,这个例子()说在a:shoulda组中列出'shoulda'gem,并说这是可行的。然而,需要这样做的环境将是“测试”,也许是“开发”。是什么导致“shoulda”组中的gem被加载

在其他示例中,例如,我看到cucumber rails和相关gem被放入:测试组,但cucumber任务在“cucumber”环境中运行,因此,在需要gem时,如何加载它们?

您将看到,至少他们还说:

In test/test_helper.rb add:
Bundler.require(:shoulda)
这需要shoulda小组。

你会看到他们也在说:

In test/test_helper.rb add:
Bundler.require(:shoulda)

这需要shoulda组。

在我的capistrano配方中,Bundler使用
--运行,而无需进行开发测试
,以防止安装这些组,我猜这是默认行为。

在我的capistrano配方中,Bundler运行时使用
——无需进行开发测试
,以防止安装这些组,这是我猜想的默认行为。

符合我的理解,即在安装过程中包括所有组,除非它们被明确排除,但加载时必须明确要求每个组。这与我的理解相符,即在安装过程中包括所有组,除非它们被明确排除,但加载时必须明确要求每个组。谢谢。这让我发疯了:)谢谢。这让我发疯:)