2011-04-06 69 views
0

我正在开发一个基于Rails 3的订阅网站,我需要使用PayPal Express Checkout(英国)进行定期付款。我发现它在ActiveMerchant中默认不支持,所以我遇到了以下博文:http://rayvinly.com/articles/2009/02/20/paypal-recurring-billing-with-activemerchant-in-ruby-on-rails/如何在我的项目中包含active_merchant的Raymond Law分支?

对于Rails来说,这是非常新的,并且遵循使用Gemfile和bundle install来安装其他第三方代码的方法,我试图把它添加到Gemfile中:

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

然后运行bundle install。我收到以下错误:

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创建的额外Gateway部分。然而,我似乎无法找到我需要将文件放在我的项目中的位置,因为我不确定ActiveMerchant的位置在哪里?

任何人都可以指出我对这个方向正确吗?这可能是我错过的Rails 101的东西,但我似乎无法看到它。我仍然在以Rails的方式让我的头脑!来自10年的PHP。

在此先感谢您的帮助。

回答

1

如果有<gemname>.gemspec文件存在,通常只能从git回购安装。大多数宝石主档案包括这一点,但有些,无论出于何种原因,不是,而是在构建宝石之前根据需要生成它。这具有难以安装宝石的“边缘”版本的副作用。

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

+0

谢谢你的回复。我最终将其添加为插件: – slarti42uk 2011-04-13 16:27:52

0

有一个在最新版本的shopify库的.gemspec文件,如果你把它变成你,那么你的宝石行需要如下所示:

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

注意在没有下划线宝石名称。

相关问题