Ruby on rails 设计邮递员

Ruby on rails 设计邮递员,ruby-on-rails,devise,Ruby On Rails,Devise,我将Rails3.2与ruby 1.9.3和Desive 2.1.2结合使用 我想要一个管理员创建用户名和电子邮件用户 如何为该用户随机生成密码,并向其发送一封带有密码的电子邮件?如何为用户随机生成密码 在控制器中 pwd = Devise.friendly_token[0,16] @user = User.new(params[:user]) @user.password_confirmation = @user.password = pwd 用他的密码发送电子邮件 看看这个问题: 最终,

我将Rails3.2与ruby 1.9.3和Desive 2.1.2结合使用

我想要一个管理员创建用户名和电子邮件用户


如何为该用户随机生成密码,并向其发送一封带有密码的电子邮件?

如何为用户随机生成密码

在控制器中

pwd = Devise.friendly_token[0,16]

@user = User.new(params[:user])
@user.password_confirmation = @user.password = pwd
用他的密码发送电子邮件

看看这个问题:

最终,它将归结为如下内容:

 mail(:to => "#{user.email}", :subject => "Welcome to My Awesome Site, your password #{pwd}")

为用户随机生成密码

在控制器中

pwd = Devise.friendly_token[0,16]

@user = User.new(params[:user])
@user.password_confirmation = @user.password = pwd
用他的密码发送电子邮件

看看这个问题:

最终,它将归结为如下内容:

 mail(:to => "#{user.email}", :subject => "Welcome to My Awesome Site, your password #{pwd}")

首先,您需要通过管理员为句柄重新分配用户创建控制器

假设您的控制器名为
registrations\u controller.rb

 class RegistrationsController < Devise::RegistrationsController
 before_filter :resource_name

 def resource_name
  :user
 end

 def new
   @user = User.new
 end

 def create
    @user = User.new(params[:user])
    generated_password = Devise.friendly_token.first(6) #password length 6
    @user.password_confirmation = @user.password = generated_password
    if @user.save
      # Send Password Via Email
      UserMailer.password_send(@user).deliver
      redirect_to a_path
    else
      render action: "new"
    end
 end
class UserMailer < ActionMailer::Base
  default :from => "youremail@email.com"

   def password_send(user)
     @user = user
     mail(:to => user.email, :subject => "password", :from => "youremail@email.com")
   end
  end
这里是
app/controller/registrations\u controller.rb

 class RegistrationsController < Devise::RegistrationsController
 before_filter :resource_name

 def resource_name
  :user
 end

 def new
   @user = User.new
 end

 def create
    @user = User.new(params[:user])
    generated_password = Devise.friendly_token.first(6) #password length 6
    @user.password_confirmation = @user.password = generated_password
    if @user.save
      # Send Password Via Email
      UserMailer.password_send(@user).deliver
      redirect_to a_path
    else
      render action: "new"
    end
 end
class UserMailer < ActionMailer::Base
  default :from => "youremail@email.com"

   def password_send(user)
     @user = user
     mail(:to => user.email, :subject => "password", :from => "youremail@email.com")
   end
  end
下面是
app/views/user\u mailer/password\u send.html.erb

   Email : @user.email<br/>
   Username : @user.username<br/>
   Password : @user.password
Email:@user.Email
用户名:@user.Username
密码:@user.Password


希望这有帮助

首先,您需要通过管理员为句柄重新分配用户创建控制器

假设您的控制器名为
registrations\u controller.rb

 class RegistrationsController < Devise::RegistrationsController
 before_filter :resource_name

 def resource_name
  :user
 end

 def new
   @user = User.new
 end

 def create
    @user = User.new(params[:user])
    generated_password = Devise.friendly_token.first(6) #password length 6
    @user.password_confirmation = @user.password = generated_password
    if @user.save
      # Send Password Via Email
      UserMailer.password_send(@user).deliver
      redirect_to a_path
    else
      render action: "new"
    end
 end
class UserMailer < ActionMailer::Base
  default :from => "youremail@email.com"

   def password_send(user)
     @user = user
     mail(:to => user.email, :subject => "password", :from => "youremail@email.com")
   end
  end
这里是
app/controller/registrations\u controller.rb

 class RegistrationsController < Devise::RegistrationsController
 before_filter :resource_name

 def resource_name
  :user
 end

 def new
   @user = User.new
 end

 def create
    @user = User.new(params[:user])
    generated_password = Devise.friendly_token.first(6) #password length 6
    @user.password_confirmation = @user.password = generated_password
    if @user.save
      # Send Password Via Email
      UserMailer.password_send(@user).deliver
      redirect_to a_path
    else
      render action: "new"
    end
 end
class UserMailer < ActionMailer::Base
  default :from => "youremail@email.com"

   def password_send(user)
     @user = user
     mail(:to => user.email, :subject => "password", :from => "youremail@email.com")
   end
  end
下面是
app/views/user\u mailer/password\u send.html.erb

   Email : @user.email<br/>
   Username : @user.username<br/>
   Password : @user.password
Email:@user.Email
用户名:@user.Username
密码:@user.Password

希望这有帮助