2012-03-24 2 views
0

MailchimpからセグメントID値を保存しようとしています。私は正常に "購読"と "購読解除"プロセスを作成しました。私は今、 "イベント"モデルを作成するたびにリストセグメントを作成しようとしています(これは私の電子メールリストからサイドセグメントを作成することができます)。リストセグメントを作成してセグメントID値を返すことができますが、そのIDを保存する際に問題があります。イベントテーブルにseg_id列があり、MailChimp APIモデルを呼び出すすべてのメソッドがMailChimpListモデルクラスになっています。 Mailchimp APIでコールバック値を保存するレール

この

は私MailChimpList APIの私の方法です

def event_segment_list(event) 
    event_mailer_id = @api.list_static_segment_add(
    :name => event ) 
    Rails.logger.info "Created segment for event #{event_mailer_id}" 
end 

私は私のイベントクラスで、その値を保存しようとしています今

正しい値に戻っているロガー、

class Event 

after_create :create_email_segment 

private 
def create_email_segment 
    list = MailchimpList.new 
    if list.available? 
    id = list.event_segment_list(
     self.slug 
    ) 
    end 
    self.seg_id = id 
    end 
end 

seg_id列にセグメントID値を保存する最良の方法は何ですか?

答えて

0

私はupdate_attributeを使用してこれを解決しました。

class Event < Cause 
after_create :create_email_segment 

private 
def create_email_segment 
    list = MailchimpList.new 
    if list.available? 
     mail_id = list.event_segment_list(
     self.slug) 
    end 
    self.update_attribute(:seg_id, mail_id) 
    end 
end 
関連する問題