TECH CAMP learning personal application creation ③

Addition of user information editing function

First, enter the following code at the terminal.


$ rails g controller users

Then enter the following in the routing.


 devise_for :users
 root "photos#index"
 resources :users, only: [:edit, :update]

The meaning of resources means resources in Japanese, and I think it can be interpreted as using the editing and updating functions in users.

Then edit the controller.


def edit

def update
   if current_user.update(user_params)
      redirect_to root_path
      render :edit


def user_params
   params.require(:user).permit(:name, :email)

(1) current_user is a helper method of devise, and you can get the user information during login. (2) redirect_to transfers to a path different from the originally received path. The above means forwarding to root_path. ③ If the above fails, render will call edit. ④ private is a private method that cannot be called from outside the class. The merit -Isolate methods that are in trouble if called from outside the class -Readability, when searching for a method called from outside the class, you do not have to read the part below private. (5) user_params The following are strong parameters that receive only parameters with the specified key. ⑥ Request user in the strong parameter to get permission for: name ,: email. Use binding.pry immediately after update to see the details.

Recommended Posts

TECH CAMP learning personal application creation ③
TECH CAMP learning personal application creation ②
☆ First post: TECH CAMP learning, personal application creation ①, fledgling engineer
Personal application creation # 2
Personal application creation # 3
Personal application creation # 1
TECH CAMP learning personal app ④ git ignore
Personal application creation term
2020/10/1 Tech Camp Day 11 Output
2020/10/3 Tech Camp Day 13 Output
2020/10/2 Tech Camp Day 12 Output
Personal application production diary 3
2020/10/4 Tech Camp Day 14 Output
TECH CAMP After 10 weeks
[Spring Boot] Web application creation
[Impression] Take a Tech Camp
Task management application creation procedure