그래서 사용자 프로필에 대한 링크를 만들려고합니다! 그래서 사용자의 컨트롤러이 있습니다언제든지 사용자 프로필로 리디렉션 할 수 있습니다. Ruby on Rails
class UsersController < ApplicationController
def new
#defining the "@user" object for the form_for
@user = User.new
end
#defining a function for the "show" html file
def show
#get user id by URL address
@user = User.find(params[:id])
end
#handling user login succes or failure
def create
@user = User.new(params[:user])
if @user.save
#using "flash" variable Ruby
#flash[:success] = "Welcome to the Sample App!" <<< use this !!
#render success page
redirect_to @user
else
#render failure page (using error partial page)
render 'new'
end
end
#mine to show user profile
def show_user
render 'show'
end
end
내 routes.rb에 내가 가지고 :
DemoApp::Application.routes.draw do
get "intergration_test/authentication_pages"
#Removed!
#get "users/new"
#ROOT page
root to: 'static_pages#home'
#My routes
match '/user_profile', to: 'users#show_user'
#REST architecture for users
resources :users
#including the Sessions action
resources :sessions, only: [:new, :create, :destroy]
match '/signup', to: 'users#new'
match '/signin', to: 'sessions#new'
#Note the use of via: :delete for the signout route, which indicated that it should be invoked using an HTTP DELETE request
match '/signout', to: 'sessions#destroy', via: :delete
end
을 왜
#mine to show user profile
def show_user
render 'show'
end
나에게 오류를 반환하지 :
undefined method `email' for nil:NilClass
을
사용자가 null 인 것 같습니다! 이미 로그인했습니다! 그래서 나는 사용자를 활성화시켜야한다. redirect_to @user
을 사용해도 작동하지 않습니다! 도움?