본문 바로가기

Archived(Programming)/Ruby on Rails(기초)

(12)
RubyOnRails 10) Tinymce Text편집기 RubyOnRails 10) Tinymce Text편집기 참고 :http://blog.naver.com/PostView.nhn?blogId=kbs4674&logNo=221039105137http://hibee.tistory.com/13 기본적인 Textarea가 아닌 글꼴이나 크기 등을 지정할 수 있는 텍스트 편집기 gem에 대해 공부하고자 한다. Tinymce를 활용할 경우 다음과 같은 텍스트 편집기를 사용할 수 있다. (시작하기에 앞서 기본적인 세팅은 다음의 페이지를 참고하여 세팅하기를 추천한다.) 먼저, 다음의 gem들을 설치해준다.tinymce의 경우 우리가 사용하려는 gem이고, carrierwave는 이미지 업로드를 위한 gem,fog의 경우 이미지 원격 저장소를 위한 gem이다. 123456..
RubyOnRails 9) Category 나누기 RubyOnRails 9) Category 나누기 여러 게시글들을 카테고리에 맞게 나눠서 관리할 수 있도록 하고자 한다.먼저 Post 모델에서 category field를 추가한다. 123$ rails g migration add_category_to_posts category:integer($ rails g migration AddCategoryToPosts category:integer)$ rails db:migrateColored by Color Scriptercs 그 다음 Routes.rb 파일에서 카테고리 ID를 나눠서 get으로 접근할 수 있도록 새롭게 지정해준다.또한 해당 Index에서 글쓰기를 눌렀을 때, 카테고리에 맞는 게시글을 쓸 수 있도록 new도 변경. 1234Routes.rb.....
RubyOnRails 8) Impressionist 조회수 구현 RubyOnRails 8) Impressionist 조회수 구현 참고:http://blog.naver.com/PostView.nhn?blogId=kbs4674&logNo=221042620689&categoryNo=78&parentCategoryNo=0&viewDate=¤tPage=1&postListTopCurrentPage=1&from=postView 게시글에 대한 조회수를 구현하기 위해 먼저 다음의 젬을 설치해준다. 1234Gemfile gem 'impressionist'$ bundlecs 다음 다음의 명령어를 수행한다. 12$ rails g impressionist$ rails db:migratecs 그리고 Post.rb 파일로 가서 다음의 코드를 추가해준다. 123456789101112/..
RubyOnRails 언어 설정 RubyOnRails 언어 설정 123456/config/application.rb ...config.i18n.default_locale = :koconfig.time_zone = 'Seoul'...cs 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013..
RubyOnRails 7) Pagination 페이지 나누기 RubyOnRails 7) Pagination 페이지 나누기 참고 :https://steemit.com/ruby/@kbs4674/ruby-on-rails-gem-kaminari 게시글들을 한 번에 쭉 나열하는 것이 아닌 페이지를 나눠서 보여주는 방법을 알아보고자 한다.먼저 Kaminari 라는 젬을 사용할 것인데 gemfile에 해당 gem을 추가하고 설치해준다. 12gem 'kaminari'$ bundlecs 그 다음, 페이지를 나눌 컨트롤러에 가서 다음의 코드를 추가해준다. 12345678/app/controllers/posts_controller.rb def index ... @posts = Post.order("created_at DESC").page(params[:page]).per(10) @p..
RubyOnRails 6) Carrierwave 이미지 첨부 기능 RubyOnRails 6) Carrierwave 이미지 첨부 기능 참조 : http://flearning-blog.tistory.com/97https://hcn1519.github.io/articles/2016-02/carrierwave Carrierwave 젬을 통해 Rails 에서는 이미지를 주고 받을 수 있다.먼저 gem을 설치한다. carrierwave 젬이 우리가 원하는 이미지 첨부 기능을 할 메인 젬이고mini magic은 이미지 크기 조정, fog_aws는 이미지 저장소를 위한 젬이다. 123gem 'carrierwave', github: 'carrierwaveuploader/carrierwave'gem 'mini_magick'gem 'fog-aws'Colored by Color Script..
RubyOnRails 5) Like 좋아요 기능 RubyOnRails 5) Like 좋아요 기능 참고 : http://sookmyunglion.tistory.com/7#comment14590767 먼저 Like Model을 만들어준다. 1$ rails g model like post:references user:references$ rails db:migratecs 그리고 Post와 User에 Like와의 관계를 연결해준다.추가로 User에는 해당 유저가 좋아요를 눌렀는지 체크를 하는 메소드 is_like?를 추가해준다. 123456789\app\models\post.rbhas_many :likes \app\models\user.rbhas_many :likes def is_like?(post) Like.find_by(user_id: self.id, p..
RubyOnRails 4) Search 검색하기 RubyOnRails 4) Search 검색하기 Search 검색기능을 처리해주기 위해 먼저, Navbar view를 처리해준다. 123456789101112131415\app\views\posts\_navbar.html.erb 제목 내용 제목+내용 작성자 SearchColored by Color Scriptercs 그 다음, posts Controller에 action을 추가해준다. 1234567891011121314\app\controllers\posts_controller.rb # 검색하기 ------------------------------------------------- def search if params[:cate] == "1" @posts =Post.where("title LIKE ?"..