0

我正在使用 Rails 3 开发一个基于订阅的网站,我需要使用 PayPal Express Checkout (UK) 进行定期付款。我发现 ActiveMerchant 默认不支持它,所以我看到了以下博客文章:http ://rayvinly.com/articles/2009/02/20/paypal-recurring-billing-with-activemerchant-in-红宝石轨道/

作为 Rails 的新手,并遵循使用 Gemfile 和 bundle install 安装其他第三方代码的方法,我尝试将其添加到 Gemfile:

gem 'active_merchant', :git => 'https://github.com/rayvinly/active_merchant.git'

然后运行捆绑安装。我收到以下错误:

Updating https://github.com/rayvinly/active_merchant.git
Fetching source index for http://rubygems.org/
Could not find gem 'active_merchant (>= 0)' in https://github.com/rayvinly/active_merchant.git (at master).
Source does not contain any versions of 'active_merchant (>= 0)'

我不确定这是将其纳入我的项目的正确方法。

我真正想做的是安装最新的 ActiveMerchant gem,然后只添加 Raymond 创建的额外网关部分。但是我似乎无法找到我需要将文件放在我的项目中的位置,因为我不确定 ActiveMerchant 在哪里?

任何人都可以为我指出正确的方向吗?这可能是我错过的 Rails 101 东西,但我似乎看不到它。我仍然在使用 Rails 方式!来自 10 年的 PHP。

提前感谢您的任何帮助。

4

2 回答 2

1

git通常,如果存在<gemname>.gemspec文件,您只能从 repo 安装。大多数 Gem master 档案都包含此内容,但有些人出于某种原因不这样做,而是在构建 gem 之前根据需要生成它。这具有难以安装 gem 的“edge”版本的副作用。

您可以通过分叉该存储库并构建您自己的 active_merchant.gemspec 文件来解决此问题,这将使它可以从您的分支安装。

于 2011-04-06T15:44:49.127 回答
0

在最新版本的 shopify 存储库中有一个 .gemspec 文件,如果您将其拉入您的存储库,那么您的 gem 行需要如下所示:

gem 'activemerchant', :git => 'https://github.com/rayvinly/active_merchant.git'

请注意 gem 名称中没有下划线。

于 2011-06-17T00:35:34.523 回答