[Rails] 간단한 소개 기능 설치 방법
프로필에서 자기 소개 기능 실현
제품 조합이 완료되면 추가 구현되기 때문에 순서를 메모로 남깁니다.
기존 열 (예를 들어 사용자 이름 이메일 비밀번호) 에 새 introduction 열을 추가합니다.
최대한 간단하게 쓰세요!
어떻게 해요?
순서는 다음과 같습니다.
1.git checkout-b introduction(지분 절단)
브랜치를 분리하여 새로운 기능을 구현합니다.
2. 사용자 테이블에 소개 열 추가
단말
$ rails generate migration AddIntroductionToUsers introduction:text
invoke active_record
create db/migrate/20200712005652_add_introduction_to_users.rb
상기 rails g 명령을 사용하여 introduction 열을 추가합니다.3. 데이터베이스에 반영
단말
$ docker-compose run web rails db:migrate
== 2020~~~~ AddIntroductionToUsers: migrating ===========================
-- add_column(:users, :introduction, :text)
-> 0.0518s
== 2020~~~~ AddIntroductionToUsers: migrated (0.0519s) ==================
4.users 컨트롤러에 필요한 코드 추적
전용 메서드에 추가
내부 속성 부여
users_controller.rb
def user_params_update
params.require(:user).permit(:name, :email, :image, :introduction) # introdution追加
end
이제 introduction을 업데이트할 수 있습니다.5.user 모델에 필요한 코드 추적
인증을 추가합니다.자기소개는 50자 이내로 입력하세요.
글자 수를 자유롭게 설정하십시오.
※ presense이지만 false로 설정하지 않으면 새로 등록할 때 작용합니다. introduction은nil로 바뀌어 새로 등록할 수 없습니다. 주의하십시오.새로 등록할 때도 자기소개를 입력해야 한다면true를 입력하면 된다.
user.rb
validates :introduction, presence: false, length: { maximum: 50 } # 自己紹介の最高文字数は50文字
6. 사용자 세부 정보 페이지(MYPAGE)에 표시
show.html.slim
= @user.introduction
SCSS 에서 적절히 수정하십시오.7. 사용자 편집 페이지(EDIT)에 표시
사용자 편집은 사용자 이름 이메일만 사용하지만 introduction을 추가합니다.
edit.html.slim
.form-group
= f.label :introduction
= f.text_area :introduction, class: 'form-control', id: 'user_introduction'
완성
이로써 우리는users표에 자기소개를 추가하고introduction 속성을 추가했습니다.
도중에 introduction에 introduce라고 쓰여 있으니까 여러분도 주의하세요!
Reference
이 문제에 관하여([Rails] 간단한 소개 기능 설치 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/tomoyuki_kt/items/0ee69372a973dfd930c2텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)