Tôi khá mới với đường ray và cố gắng tìm ra mọi thứ. Gần đây tôi đã có một bưu phẩm tất cả các thiết lập và nó đã làm việc tốt. Nhưng tôi đang cố gắng thêm một bưu phẩm thứ hai cho hành động của người dùng và nó dường như không hoạt động.Rails - Devise gửi email cho người dùng sau khi sign_up/tạo
Điều tôi đang cố gắng đạt được là người dùng đăng ký, họ sẽ gửi email tới quản trị viên, khi đó quản trị viên phải bật người dùng. Hiện tại, khi quản trị viên cho phép người dùng, họ sẽ gửi email cho họ, nhưng vì lý do nào đó, email người dùng mới tạo của tôi không kích hoạt. Tôi nghĩ điều này là do phương pháp tạo của tôi không kích hoạt, tôi nên đặt nó ở đâu? Tôi có cần ghi đè phương pháp người dùng không?
My UserMailer điều khiển:
class UserMailer < ActionMailer::Base
default from: "[email protected]"
def send_enabled_message(user)
@user = user
mail(:to => user.email, :subject => "Welcome to Pixel Technologies!!!")
end
def send_new_user_message(user)
@user = user
mail(:to => '[email protected]', :subject => "New User created please review and enable.")
end
end
users_controller của tôi:
class UsersController < ApplicationController
before_filter :authenticate_user!
load_and_authorize_resource
# POST /users
def create
@user = User.new(user_params)
puts "******************** NEW USER ****************************"
puts user_params
if @user.save
puts 'Sending email for create user'
UserMailer.send_new_user_message(@user).deliver
redirect_to @user, notice: 'User was successfully created.'
else
render action: 'new'
end
end
Nhưng tạo phương pháp này không bao giờ bị sa thải. Tôi đang làm gì sai. Có phương pháp nào khác mà tôi cần phải đặt UserMailer.send_new_user_message (@user) .deliver không?
Khi người dùng đăng ký là người sử dụng tạo ra tại thời điểm đó? Nếu vậy thì có lẽ email của bạn sẽ được gửi trên phương thức cập nhật người dùng nếu quản trị viên bằng cách nào đó cho phép người dùng, khó xem từ điều này với toàn bộ luồng ... – tronmcp