우리 사이가 더 좋아지자, devise씨!
5413 단어 Rails
오늘은 기본적인 사용 방법과 자주 발생하는 오류의 조합을 정리한다
이른바 devise
Rails를 사용할 때 주위에 로그인하는 기능은 devise라는 Gem을 사용하여 간단하게 실현할 수 있습니다!이걸 사용하지 않는 방법은 없어.
devise의 Gem을 설치해 보세요!
단계는 다음과 같다
1. Gem 파일의 마지막 줄에 "gem"devise"추가
2. 터미널에서 현재 디렉터리를 확인한 후 $bundle install 명령을 실행합니다
3. $rails 명령으로 서버 재부팅
여기서 흔히 볼 수 있는 오류 1
Gem을 설치한 후 서버를 재부팅해야 합니다.서버를 시작할 때 설치된 Gem이 반영되기 때문입니다.
즉, 서버를 부팅하지 않으면 오류가 발생
예를 들어, devise가 설치되어 있지만 No Method Error에서 undefinde method "useder signed in"나타났을 때주의하세요!
devise 프로필을 만듭니다!
프로필을 만들려면 $rails g devise:install 명령을 실행하십시오.
만든 파일은 다음과 같습니다!
- config/initializers/devise.rb
- config/locales/devise.en.yml
여기서 흔히 볼 수 있는 오류 2
install 명령을 실행하지 않고 "User 모형을 실행하는 명령 $rails g deviseuser"를 계속 실행하면 오류가 발생합니다!
그것은 터미널에서 rails를 포함하는 지령을 포장하려고 할 때였다.
예를 들어 $rails routes를 실행하면
오류 문 보이기 (예: call 'User. connection' to establish a connection)
근데 괜찮아!
이럴 땐 다음 순서대로 해결합시다
1. config/routes.rb 파일에 자동으로 기술된 'devise for:users' 에 대한 설명
2. 터미널에서 $rails g devise:install 명령 실행
이렇게 하면 해결할 수 있을 거야!
계정을 만드는 User 모델!
단계는 다음과 같다
1. $rails g deviseuser 명령 실행
2.migrate 명령을 사용하여 나의 그레이스케일을 실행합니다
마이그레이션 파일 생성에 주의하십시오.
- app/models/user.rb→User 모델
- db/migrate/2014XXXXXXXXXX_devise_create_users.rb→ 로그인 기능에 필요한 열을 추가하는 마이그레이션 파일
- test/fixtures/users.yml
- test/models/user_test.rb
또한 $rails g deviseuser 명령, config/routes를 실행합니다.요점은 rb 파일에 devise용 루트를 자동으로 추가하는 것입니다 (=devise for:users)
여기서 흔히 볼 수 있는 오류 3
좋아!여기서 서버를 재부팅해 보세요!이렇게 생각하면서 수행하는 동안 펜딩 미그레이션 에로르가 나와서...무슨 일 있어요?
하지만 서두르지 마세요!이럴 땐 다음과 같은 방법으로 해결하자
1. migrate가 실행되었는지 확인
→$railsdb:migrate에서 명령을 실행하는 것을 잊었는지 여부
2.아이구,migrate를 실행하려면 다음에 새로운 오류가 발생합니다!Myaql2::Error:...
→$railsdb:migrate:status 명령 확인 상태
3. 다운 상태의 파일을 찾았다!
→ $rails g deviseuser 명령을 두 번 잘못 실행할 수 있습니다!
→down 상태에서 add devise to users 마이그레이션 파일 삭제
이렇게 하면 해결된다!!
요약
PC의 구조를 모르고도 사용할 수 있도록 devise는 매우 편리하지만, 한편으로는 구조가 좀 복잡한 것 같습니다!
그러나 로그인 기능의 설치
1. devise용 Gem 설치
2. devise 프로필 만들기
3. devise 명령을 사용하여 User 모델 생성
이상의 절차에 따라 간단하게 진행한다면
Reference
이 문제에 관하여(우리 사이가 더 좋아지자, devise씨!), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/KieWatanabe/items/64cc0905b4890389d817텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)