해당 글은 https://blog.naver.com/kbs4674/221182443309 로 부터 게시글이 이전되었습니다. 댓글에 또 다른 답 댓글, 즉 중첩댓글에 대한 글을 다룹니다. 중첩댓글 : act as commentable with threading 참고 Post Scaffold에서 댓글을 구축하는 예시로 설명함. Devise Gem을 기본적으로 사용한다는 가정 하에 사용하셔야 합니다. [참고] 1. Gemfile 에 다음 내용을 입력해줍니다. gem 'acts_as_commentable_with_threading' 새로운 Gem을 설치해 주세요. bundle install 2. 다음 명령어를 입력해서 Model과 DB(Migration 파일)를 생성해 줍니다. rails generate act..
해당 글은 https://blog.naver.com/kbs4674/221174702377 로 부터 게시글이 이전되었습니다. 띵동! 누군가가 제 게시물에 댓글을 달면 그 알림이 오면 참 좋겠죠! 이번에는 누군가 댓글을 달면 알람이 울리는 알람잼에 대해 같이 해보겠습니다! 참고 1. Deivse Gem [클릭], act-as-commentable-with-threading(중첩댓글) [클릭] Gem을 활용한 기준으로 설명드립니다. 알람잼 : unread 참고 시작 전 제 댓글 방식은 다음 댓글방식을 이용했습니다. [참고 : 클릭] 위 댓글 방식을 기준으로 설명합니다. 1. Gemfile 을 열어서 다음 내용을 추가합니다. gem 'unread' 이어서 Gem을 설치합니다. bundle install 2. 터..
해당 글은 https://blog.naver.com/kbs4674/221173415422 로 부터 게시글이 이전되었습니다. 투표를 진행하려면 찬성, 반대 이 2가지에 대한 선택권이 있어야 합니다. 이번 글에서는 이런 투표 시스템을 간단히 구축할 수 있는 Gem을 만들어 보겠습니다. 참고 본 실습에 있어선 Post Scaffold를 기반으로 설명이 진행됩니다. 투표 Gem, Gem : acts_as_votable 1. Gemfile에서 다음 Gem을 입력합니다. gem 'acts_as_votable' Gem을 설치합니다. bundle install 2. 터미널에 다음 명령어 입력합니다. rails generate acts_as_votable:migration 그럼 새로운 테이블이 생성된게 확인될겁니다. 3..
해당 글은 https://blog.naver.com/kbs4674/221187526054 로 부터 게시글이 이전되었습니다. 홈페이지를 원만하게 운영하기 위해서는 관리자 메뉴얼 창이 따로 또 필요하곤 합니다. 하지만 혼자 스스로 관리자 페이지를 만들기란 쉽지 않습니다. 데이터가 무수히 많을 때를 대비해 SQL 최적화 작업을 해야하고, 그 외 레일즈의 모든 이론이 관리자 페이지 기술에 담겨져야할 수도 있기 때문입니다. 해당 Gem이 정말 좋은게 자기가 알아서 모든 model을 탐색해 내고, 부트스트랩/그리드가 적용되어 있어서 UI도 전체적으로 괜찮습니다. 참고 Devise Gem이 사전에 설치되어 있어야 합니다. [Devise Gem 설치법 클릭] 어드민 관리자 페이지 : rails_admin 1. Gemf..
해당 글은 https://blog.naver.com/kbs4674/221069915874 로 부터 게시글이 이전되었습니다. 게시판이 운영되는 거의 모든 사이트는 최소 '관리자'와 '유저' 이 2가지로 계급이 나뉘어 있을겁니다. 유저는 글을 쓰거나, 자신의 글에 대해서만 수정/삭제가 가능한 반면, 관리자는 게시글을 누구의 글이든 삭제 혹은 수정을 할 수 있겠죠. 이렇게 홈페이지 운영에 있어서 효율적인 관리를 위해선 '권한'이라는 계급이 필요합니다. 이번 시간에는 Devise와 rolify, cancancan Gem을 이용해서 '권한설정' 에 대해 알아보겠습니다. 시작 전 유의사항 1. Gem : devise이 기본적으로 깔려있어야 합니다. 참고 devise Gem 설치법 [클릭] 2. 필자는 CRUD 사용..
해당 글은 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..