2016-07-13 43 views
0

我試圖在用戶提交帖子時發送電子郵件。下面是相關的部分我創建動作看起來就像郵局控制器:Rails郵件程序調用控制器路由的錯誤

if @post.save 
     UserMailer.alert_response(@post, @user).deliver 
      respond_to do |format| 
       format.js { render layout: false, content_type: 'text/javascript' } 
      end 

     else 
     respond_to do |format| 
      format.js { render layout: false, content_type: 'text/javascript' } 
      end 
      # redirect_to root_url 
    end 

,我已經得到了獲取呈現後是否保存或不create.js.erb文件。在我UserMailer控制器alert_response方法是這樣的:

def alert_response(post, user) 
    @response_post = post 
    @parent = post.parent 
    @parent_user = @parent.user 
    @user = user 
    mail to: @parent_user, subject: "Someone Responded to Your Post" 
    end 

當我不包括UserMailer.alert_upvotes(@post,@user).deliver在創建行動,一切都運行得很好。 create.js.erb文件被渲染,這就是全部。當我包含它時,create.js.erb文件永遠不會呈現,由於某種原因,我的後控制器的索引操作被觸發,並且索引視圖被渲染。我的UserMailer調用有問題嗎?

回答

0

想通了。我必須創建一個新的PostMailer控制器,並在其中添加相應的操作。