使用rake db:seed任务在Spree :: Billing Integration中预配置支付网关

时间:2013-01-22 17:56:23

标签: ruby-on-rails spree spree-paypal-express

上帝的日子,

我对所有这些RoR事物都很陌生,我正在设立Spree商店。

我正在尝试使用seedbank gem预先配置我的商店,具体取决于环境。我不知道如何预配置Spree :: BillingIntergration :: PaypalExpress网关。

如果我启动'rails console'并运行

,我可以输出所有配置
Spree::BillingIntegration::PaypalExpress.find_by_id(1).options

这是一个代码: https://github.com/spree/spree_paypal_express

但这些值不存储在数据库中。如何使用'rake db:seed'预先填充这些选项?

提前致谢。

环境: rails -v = 3.2.11

ruby​​ -v = ruby​​ 1.9.3p194(2012-04-20修订版35410)[x86_64-darwin11.4.0]

spree -v = 1.3.1

1 个答案:

答案 0 :(得分:0)

您可以将以下代码添加到db / seeds.rb(或其他文件,如果有更高级的结构):

Spree::BillingIntegration::PaypalExpress.create!(
    name: 'Paypal (or whatever you want)',
    description: '',
    active: true,
    environment: Rails.env,
    display_on: '',
    preferred_currency: '<fill_here>',
    preferred_login: '<fill_here>',
    preferred_password: '<fill_here>',
    preferred_signature: '<fill_here>',
    preferred_review: false,
    preferred_no_shipping: false,
    preferred_cart_checkout: true,
    preferred_allow_guest_checkout: false,
    preferred_server: 'test',
    preferred_test_mode: true
)

因此您可以看到所有选项都带有preferred前缀。