我想在 ajax 方法完成后执行一个动作邮件方法。我本质上构建了一个 twitter 应用程序,并希望在有人点击“关注”后发送电子邮件通知,这是异步完成的。
我给了关注按钮一个ID
<%= f.submit "Follow", :class => "btn btn-large btn-primary",
:id => "follow_button"%>
然后用jquery
$("#follow_button").bind('ajax:success', function() {
});
但是,我真的很确定如何在 jquery 中引用我的 UserMailer。最终我试图在我的 ajax 完成后执行这一行
UserMailer.is_now_following(@user, current_user).deliver
谢谢!
嗯,我尝试在我的创建函数中添加那行代码(以创建跟随关系),但它落后于我的 ajax 很多。ajax 是在单击“关注”后呈现“取消关注”按钮。
def create
@user = User.find(params[:relationship][:followed_id])
current_user.follow!(@user)
respond_to do |format|
format.html {redirect_to @user}
format.js
end
#UserMailer.is_now_following(@user, current_user).deliver
end
我把它注释掉了。这是我的ajax调用成功后添加它的意思吗?另外,您如何将工作放在队列中?谢谢!