Я использую следующий камень в моем приложении рельсов:Добавление сообщений для приложения Rails?
http://github.com/fnando/post_commit
Я пытаюсь узнать, как передавать данные поставщиков услуг, такие как Костер на создании записи в моем приложении.
Использование Костер в качестве теста я следующее в моей kase.rb модели:
# Campfire
post_commit :campfire do
authorize :subdomain => "XXXXXXXXXX", :token => "XXXXXXXXXXXX", :room => 'XXXXXXX'
post "New Record", :type => :text
end
следующее в моем kases_controller.rb:
# POST /kases
# POST /kases.xml
def create
@company = Company.find(params[:kase][:company_id])
@kase = @company.kases.create!(params[:kase])
respond_to do |format|
@kase.sendtocampfire if params[:send_to_campfire]
#flash[:notice] = 'Record was successfully created.'
flash[:notice] = fading_flash_message("Record was successfully created.", 5)
format.html { redirect_to(@kase) }
format.xml { render :xml => @kase, :status => :created, :location => @kase }
end
end
и следующее, на мой взгляд:
<%= check_box_tag :send_to_campfire, 1, true %> Send Case to Campfire?
При использовании приведенного выше кода, я получаю сообщение об ошибке:
NoMethodError in KasesController#create
undefined method `post_commit' for #<Class:0x10528e3e8>
Может кто-нибудь указать мне в правильном направлении, пожалуйста?
Спасибо,
Дэнни
Привет, если я добавлю config.gem 'post_commit', ошибка изменится на: NoMethodError в KasesController # create undefined method 'sendtocampfi re 'для # –
dannymcc
@dannymcc Итак, у вас есть метод под названием 'sendtocampfire' в вашей модели' Kase'? Это то, что обертывает вызов 'post_commit'? – bjg
Привет, Ниже в моей модели Касе: # Костер post_commit: Костер сделать авторизированным: субдомен => "dannyweb",: маркер => "820d410dc1850659cfa2bb440efa3ae1b106786d",: комната => пост «Дело 'McClelland & Co' созданный в Survey Manager »,: type =>: text end - Я не знаю, правильно это или нет? Спасибо, Danny – dannymcc