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.