일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 웹 프론트엔드
- 모듈화
- 예스인테리어
- 모닝버드
- 홈페이지 개발하기
- 웹프로그래밍
- 프론트엔드
- 레일즈
- rails review
- Ruby On Rails
- 꿀팁
- django 공부하기
- Python
- express-mysql-session
- 파이썬 웹 프레임워크
- 웹 프로그래밍
- 웹 프로그래밍 입문
- node.js
- jquery
- 루비온레일즈
- 루비 온 레일즈
- 장고
- 장고 공부하기
- Django
- css3
- nodejs
- nodejs api
- rails
- 루비
- 데스크탑애플리케이션
- Today
- Total
노래하듯 이야기하고, 춤추듯 정복하라.
[Ruby & Rails] Rails의 devise gem 사용하기 본문
#rails gem
rails의 gem은 nodejs을 해보신 분이시라면 npm, django를 해보신 분이라면 pip를 생각하시면 이해가 쉽다. rails의 정식 모듈들, 그리고 일반 사용자들이 더 편한 개발을 위해 직접개발해서 올린 많은 gem들이 있는데, 터미널 창에 gem install gem_name 의 명령을 통해 설치할 수 있따.
#rails의 'devise' gem
rails에서는 간편한 인증을 구현하기 위한 devise라는 gem이 있다. 기본적으로 email과 password, password_confirm 의 구조로 되어 있으며 rails g migration add_?_to_model 을 통해 추가적인 유저 정보를 넣을 수 있다.
github => https://github.com/plataformatec/devise/
gem => https://rubygems.org/gems/devise
#devise gem 사용하기
- 1. 설치
$ rails g devise:install
- 2. 설정(config/environments/development.rb 에 아래 코드 추가)
config.action_mailer.default_url_options = { host: 'localhost', port: 3000 }
- 3.
$ rails g devise:views
- 4. 루트 path 추가 (routes.rb)
root "root#path"
- 5. 컨트롤러 수정하기
new와 create 액션
# new action
@post = current_user.pins.build
# create action
@post = current_user.pins.build(post_params)
current_user.products.build
#템플릿 확인하기
우선 템플릿을 확인하기 전에 우리가 설치한 user라는 devise model의 라우팅을 알아내야 한다. user 모델의 라우팅은 우리가 rails g devise user 을 실행함과 동시에 rails의 devise gem이 자동으로 설정해 주었을 것이다.
rake routes | grep user
우리는 위의 명령어로 아래와 같은 user 모델의 라우팅 구조를 파악할 수 있다.
http://localhost:3000/users/sign_in과 http://localhost:3000/users/sign_up 을 접속해보면 회원가입과 로그인 페이지를 확인할 수 있다.
- 회원가입 페이지
기본적으로 devise 모델이서는 이메일과 패스워드 필드만 제공하지만 위는 필자가 nickname 필드를 추가한 것이다. 이것에 대한 자세한 방법은 추후 기회가 된다면 이어서 포스팅 하도록 하겠다. 유저 모델을 성공적으로 설치했다면 다음으로 중요한 부분은 rails g devise:views를 터미널에 실행해 주어야 하는데, 이것을 실행시켜야 devise의 view 파일들이 프로젝트 폴더에 생긴다.
'프로그래밍 > Ruby & Rails' 카테고리의 다른 글
[Ruby on Rails] Post모델에 댓글(comments) 기능 추가하기 (0) | 2018.08.10 |
---|---|
[Ruby on Rails] 좋아용 기능 구현하기: acts_as_votable (2) | 2018.08.09 |
[Ruby & Rails] 사진 업로드 _paperclip (0) | 2018.08.09 |
[Ruby & Rails] Rails의 View helper (0) | 2018.07.05 |
[Ruby on Rails] scaffold 공부하기 (0) | 2018.07.05 |