Docker를 사용하여 개발 환경에서 페이지 연결 만들기
{docker의 개발 환경에서의 페이지 연결 기능 사용}
이번에는 유명한gem kaminari를 사용하여 페이지 효과를 실현합니다.
글의 대상
· Docker 환경을 구축할 수 있는 사람
• 페이지 디자인 기능을 0부터 알고 싶은 사람
페이지 문자 기능이란??
이른바 페이지 인터럽트 기능은view로 대량의 데이터를 표시할 때 모두 표시하는 것이 아니라 페이지마다 나누어 표시하는 방법이다.
개발 환경
Rails 5.0.0.1
bootstrap 4.0.0
이번에 bootstrap을 가져와서 Docker의 환경 구축이 완료된 상태를 구상합니다.
데모
1.gem 설치
Gemfile에 gem 'kaminari'
로 기술되어 있습니다.
그런 다음 다음 다음 명령을 실행합니다.$ docker-compose build
$ docker-compose up -d
$ docker-compose build
gem을 설치하거나 docker를 실행하는 데 사용되는 이미지입니다.$ docker-compose up -d
에서 용기를 시작합니다.
2. 카미나리 사용 준비
• kaminari 설정 파일 만들기$ docker-compose exec web bundle exec rails g kaminari:config
• kaminari의view 파일 만들기
※ 이번엔 부츠트랩을 사용합니다.$ docker-compose exec web bundle exec rails g kaminari:views bootstrap4
이 명령을 실행하면bootstrap4의 페이지와 어울리는 디자인을 자동으로 생성합니다.(편리...!)
3. 컨트롤러 설정
kaminari를 설치하면 페이지 방법은 모델 클래스에 사용할 수 있습니다.
여기에 실례 변수@board
를 사용하여 포럼 사이트를 만들 것을 가정합니다
컨트롤러의 index 동작에서 다음과 같은 설명을 합니다. def index
@boards = Board.page(params[:page])
end
이렇게 하면 매개 변수에 건네준 페이지에 표시된 데이터를 얻을 수 있다.
기본적으로 페이지당 25개의 데이터를 가져옵니다.
이 때 페이지라는 인자를 통과하지 않았기 때문에 항상 첫 페이지를 표시합니다.
따라서view를 추가하고 표시할 수 있습니다.
4. 뷰 만들기
kaminari를 설치하면 페이지nate 조수를 사용할 수 있습니다.
따라서 이 방법index.html.erb
을 이용하여 다음과 같이 설명한다.<%= paginate @boards %>
paginate에 표시된 매개 변수를 일람합니다.
뷰를 확인한 다음에.
페이지 디자인 기능 완성!
Reference
이 문제에 관하여(Docker를 사용하여 개발 환경에서 페이지 연결 만들기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/yuukou/items/d45d567ef61245453f38
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
$ docker-compose build
$ docker-compose up -d
$ docker-compose exec web bundle exec rails g kaminari:config
$ docker-compose exec web bundle exec rails g kaminari:views bootstrap4
def index
@boards = Board.page(params[:page])
end
<%= paginate @boards %>
Reference
이 문제에 관하여(Docker를 사용하여 개발 환경에서 페이지 연결 만들기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/yuukou/items/d45d567ef61245453f38텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)