해당 글은 https://blog.naver.com/kbs4674/221616865157 로 부터 게시글이 이전되었습니다. 만약에 게시판을 개발한다면? 사람들이 흔히 당연하다고 생각하고 쓰는것이 무엇이 있을까요? 게시글 작성 편집기, 게시글 검색, 게시판 페이지 목록... 이 외에도 다양할겁니다. 그 중, 저는 이번 시간에는 '게시판 페이지 목록'을 셋팅하는법에 대해 설명하겠습니다. 설명하기 전에 앞서서, 만약에 게시판에 페이지 목록이 없다면 어떻게 될까요? 글이 계속 세로로 쭈우우욱 무한히 써져나가고, 엄청난 스크롤 압박이 찾아오겠죠? (물론 일정 스크롤에 도착하면 새로 글이 로딩되는 무한스크롤 방법이 있긴 합니다.) 이를 방지하기 위해 탄생한 것이 '게시글 페이지 목록' 입니다. 사실 저는 Pagy ..
해당 글은 https://blog.naver.com/kbs4674/221067158208 로 부터 게시글이 이전되었습니다. 만약에 게시판을 개발한다면? 사람들이 흔히 당연하다고 생각하고 쓰는것이 무엇이 있을까요? 게시글 작성 편집기, 게시글 검색, 게시판 페이지 목록... 이 외에도 다양할겁니다. 그 중, 저는 이번 시간에는 '게시판 페이지 목록'을 셋팅하는법에 대해 설명하겠습니다. 설명하기 전에 앞서서, 만약에 게시판에 페이지 목록이 없다면 어떻게 될까요? 글이 계속 세로로 쭈우우욱 무한히 써져나가고, 엄청난 스크롤 압박이 찾아오겠죠? (물론 일정 스크롤에 도착하면 새로 글이 로딩되는 무한스크롤 방법이 있긴 합니다.) 이를 방지하기 위해 탄생한 것이 '게시글 페이지 목록' 입니다. 부록 Kaminari..
Devise 사용에 있어, email 입력보단 이메일 형식이 아닌 아이디 형식으로 입력을 원할 때가 있습니다. 이번 글에서는 해당 방법에 대해 알아보겠습니다. 이메일 대신 다른 Form 입력받기 참고 해당 설명은 Devise Gem이 깔려있어야 합니다. [클릭] 사용하시는 Devise 모델 이름이 User 라는 가정하에 설명을 작성해보겠습니다. 1. Devise User 테이블의 새로운 컬럼을 생성합니다. rails generate migration add_username_to_users username:string 컬럼 추가 후, schema 업데이트를 합니다. 2. app/controllers/application_controller.rb 파일을 열람 후, 다음 코드를 추가합니다. class Appl..
해당 글은 https://blog.naver.com/kbs4674/221052897085 로 부터 게시글이 이전되었습니다. 사이트 운영자는 자신의 홈페이지를 운영하면서 홈페이지 내 데이터가 삭제된다면, 그것이 그냥 삭제되도록 냅두는것이 아닌 삭제된 데이터에 대해 기록이 남겨져야 할 이유가 있습니다. 나중에 게시글 내 욕설로 인해 피해자가 가해자에게 고소를 하면, 게시글을 관리하는 사이트 운영자는 고소의 시발점이 되는 (삭제된) 자료를 경찰이 요구를 하면 해당 게시글의 (삭제된) 기록에 대해 보여줘야 할 의무가 있기 때문입니다. 그래서, 이번 시간에는 삭제된 데이터를 보관하는방법에 대해 알아보고자 합니다. 참고로 해당 Gem 기술에 있어서도 명칭이 존재합니다, 이러한 방식을 Soft Delete 라고 합니..
해당 글은 https://blog.naver.com/kbs4674/221042620689 로 부터 게시글이 이전되었습니다. 원래 처음에는 Gem의 힘을 빌리지 않고 조회수를 구현하려고 했는데 막 DB에 새로운 컬럼을 추가해서 순수적으로 해보려고 해보는데 잘 안되네요.. 거의 막판에 포기할 무렵...... 조회수 관련해서 전문적으로 기능을 담당하는 Gem 있다는걸 알게됩니다! 게다가 마침 IP대조까지 해서 조회수 증감 판단도 합니다! 이번엔 impressionist Gem에 대해서 소개하고자 합니다. 조회수 기능 (IP Check 포함) 1. 예제 실습을 위해 scaffold를 생성합니다. rails g scaffold post title content:text 2. Gemfile 에 다음 내용을 추가합니..
해당 글은 https://blog.naver.com/kbs4674/221052908122 로 부터 게시글이 이전되었습니다. DB가 구현되었을 때 해당 DB에 어떠한 테이블 컬럼이 있는지, DB에 내용이 잘 적용되었는지, ... 등등 DB가 돌아가는것의 모든 정보를 한눈에 볼 수 있는 유용한 Gem입니다. 또한 DB를 Expert, 데이터 추가/수정/삭제 또한 가능합니다. 이 기능을 설치하는 방법은 아주 간단합니다. Rails DB 설치 1. Gemfile 에서 내용을 입력하는데, group :development do 내에서 입력해 주세요. group :development do ... gem 'rails_db' end 참고 Development Environment 때에만 쓰이는 gem이라는 의미입니다..
해당 글은 https://blog.naver.com/kbs4674/221446902191 로 부터 게시글이 이전되었습니다. 별도의 회원정보 기록 없이, 버튼 하나만 누르면 바로 해당 사이트에 가입과 동시에 로그인이 되게하는 'Google 계정 연동 로그인'에 대해 소개하고자 합니다. 참고로 이번에 소개드릴 방법은 이미 수동적으로 회원가입이 진행되어 있어도, 구글 연동 로그인을 할 때 페이스북 아이디와 기존 Devise에 가입된 아이디와 맞는게 있을 시 동일하게 연계되어 회원활동이 가능합니다. 부록 네이버 아이디 로그인 [클릭] 페이스북 아이디 로그인 [클릭] 참고 1. Gem : devise를 이미 사용하고 있다는 가정하에 이 글을 작성합니다! [ devise Gem 설치법 클릭 ] 2. API 키 은닉..
해당 글은 https://blog.naver.com/kbs4674/221446312846 로 부터 게시글이 이전되었습니다. 별도의 회원정보 기록 없이, 버튼 하나만 누르면 바로 해당 사이트에 가입과 동시에 로그인이 되게하는 '페이스북 계정 연동 로그인'에 대해 소개하고자 합니다. 참고로 이번에 소개드릴 방법은 이미 수동적으로 회원가입이 진행되어 있어도, 페이스북 연동 로그인을 할 때 페이스북 아이디와 기존 Devise에 가입된 아이디와 맞는게 있을 시 동일하게 연계되어 회원활동이 가능합니다. 부록 네이버 아이디 로그인 [클릭] 구글 아이디 로그인 [클릭] 참고 1. 페이스북 아이디 로그인을 사용할 홈페이지가 https 도메인을 반드시 사용해야 합니다. (페이스북 정책) 2. Gem : devise를 이미..