Rails의 devise를 입문해 보기

3130 단어 루비Railsdevise

0 설명



사용자 등록, 로그인, 승인, 로그인 상태 유지 등의 웹 애플리케이션에 필수적인 기능을 쉽게 구현할 수 있는 devise를 접하고 싶습니다. 최근 Rails를 공부하기 시작했기 때문에, 기술적인 것 자세히 쓸 수 없습니다. 한가지 흐름이나, 어떤 리굴로 devise가 움직이고 있는지, 이해만 하기 위한 기사입니다.

1 rails 프로젝트 만들기



아래 명령으로 데스크탑에 devise_test라는 프로젝트를 만들 수 있습니다.
$ pwd
/Users/hujisawa/desktop
$ rails new devise_test

2 Gemfile에 다음을 추가



devise를 사용하기 위해 gem 파일에 devise를 추가합시다.
gem 'devise'

그런 다음 bundle install을 실행하여 라이브러리를 사용할 수 있도록하십시오.
bundle install

3 설정 파일을 추가합시다.



아래 명령으로 devise 구성 파일을 만듭니다. 필수입니다. 자세한 내용은 여기을 참조하십시오.
rails g devise:install

4 모델과 마이그레이션 만들기



아래 명령은 devise에서 사용되는 모델과 마이그레이션을 생성합니다. 아래 명령은 사용자 모델과 이를 위한 마이그레이션을 생성합니다. 필수입니다. 자세한 내용은 여기을 참조하십시오.
rails g devise User

모듈 추가 편집이 끝나면 마이그레이션을 실행합니다.
rake db:migrate

5 해보자



rails 웹 서버를 시작하고
rails s -p 3335

아래 URL에 액세스하면 기본 등록 화면이 표시됩니다.
http://localhost:3335/users/sign_up



6 사용자 등록 완료





사용자 등록을 해보면 실제로 사용자가 db에 등록되어 있는지 확인해 봅시다.

앱 디렉토리로 이동하여
$ cd /Users/hujisawa/Desktop/devise_test 
$ pwd
/Users/hujisawa/Desktop/devise_test

rails db 콘솔을 시작하고
$ rails dbconsole

기존 테이블을 확인하여 사용자 테이블이 생성되었는지 확인합니다.
.tables

선택해보고 등록되었는지 확인
select * from users;
//登録されてる
1|[email protected]|$2a$11$hD04NGAGdNzsLvyRxRFxBuIwrxn.....

다시 한번 http://localhost:3335/users/sign_up 에 액세스해 보면 알겠지만, http://localhost:3335/ 로 리디렉션 되네요. http://localhost:3335/users/sign_up 에 액세스했을 때, 이미 유저가 등록되어 있어, 지금은 승인이 끝나고, 그 상태가 유지되고 있기 때문에, 그 경우는 루트 디렉토리에, 리디렉트 됩니다.

해설



이 시점에서 사용자 등록 및 승인이라는 간단한 흐름이 생겼습니다. 승인된 사용자만 액세스할 수 있는 페이지, 승인되지 않은 사용자라도 볼 수 있는 페이지 등을 나누거나, 어느 정도 액세스하지 않아도 승인된 시간을 유지할지(쿠키적인)를 결정하거나 양식 의 밸리데이션을 하거나, 좀더 view를 궁리하거나, 그러한 일을 하고 싶은 경우는, 참고에 올린 url를 참고로, 컨트롤러나, 뷰나, 루트를 만져 주세요. 디폴트의 ​​기능을 구현하기 위해서(때문에), 컨트롤러나, 뷰나, 루트는 필요없고, 필요도 없습니다만, 좀더 기능을 더해, 실용화하려면 , 아래의 url을 참고로, 컨트롤러나, 뷰나 , 모델을 더 괴롭히십시오.

참고



【Rails 비망록】 devise 정리

좋은 웹페이지 즐겨찾기