2015-01-11 63 views
0

上下文: 我有一個rails應用程序。我有一個表單,用戶可以輸入他們的電子郵件列表作爲新聞信的一部分。 我使用郵件黑猩猩和長臂猿寶石的軌道。 我可以使用長臂猿api成功地將新訂閱者添加到列表中 我可以成功創建一個新的廣告系列,如下面的代碼所示。 在我的創業板文件中: gem'gibbon',git:'git://github.com/amro/gibbon.git' 爲了測試功能,我調用了CampaignsController中的創建操作(代碼如下)。 該活動已成功創建和我得到的結果從API回來,但在下一步的應用程序崩潰,並顯示以下錯誤消息:「campaing_id」在使用郵件黑猩猩api和長臂猿時不是符號錯誤

問題: 類型錯誤在CampaignsController#創建 [「XYZ」]不是xyz是新創建的廣告系列的campaign_id的符號。

代碼: 在CampaignsController

def create 
    mailchimp = Gibbon::API.new(Rails.application.secrets.mailchimp_api_key) 
    new_campaign = mailchimp.campaigns.create({:type=>"plaintext", 
     :options=> 
      {:list_id=>"abcdefgh", 
      :subject=>"Hello World",:from_email => "[email protected]", 
      :from_name => "abc",:to_name =>"Programmer"}, 

      :content => 
      {:text => "Hello remote programmers I hope you find this mail."}   
     }) 

    cid = new_campaign["id"] 
    mailchimp.campaigns.send(cid) 
end 

回答

1

看起來mailchimp.campaigns.send正在尋找一個hash選項,不只是一個ID。

從他們specs

expect(@gibbon.campaigns.send({"cid" => "1234567"})).to eq({"cid" => "1234567"}) 
+0

哇!萬分感謝 !修復了這個問題。 – newbie

+0

是否可以在此發送方法中發送合併變量? – Jayaprakash