0

I am trying to write a rails application which would create panel members for assessment, so when a new panel is created I also want to create the panel member as user of the system.

Currently my Panel Controller create looks like

def create
@member = Member.new(member_params)
email_exists =  @member.email

respond_to do |format|
  if User.exists?(:email => email_exists) & Member.exists?(:email => @member.email)
    format.html { redirect_to new_member_path, alert: 'Panel Member is already enrolled' }
  else
    if @member.save
      format.html { redirect_to @member, notice: 'Member was successfully created.' }
      format.json { render :show, status: :created, location: @member }
    else
      format.html { render :new }
      format.json { render json: @member.errors, status: :unprocessable_entity }
    end
  end
end
end

My Member model looks like

before_create :user_create

def user_create
    User.create(email: self.email, encrypted_password: "foobar") unless User.exists?(:email => self.email)
end

I want to create the user as well but the problem is with this the password remains unencrypted, I want to store the password "foobar" in encrypted format.

Apologies if this does not conform to the questions guidelines, this is my 1st on SO. PS: I am also RoR amateur.

4

1 回答 1

0

我想通了,而不是 encrypted_pa​​ssword: 我使用了 password: 并且在保存期间它被保存为加密值。

于 2015-01-19T17:46:40.357 回答