rails

Rails에는 페이지네이션을 쉽게 구현할 수 있도록 하는 Kaminary gem이 있다. 레일즈 특성상 일일히 페이지값, 전체페이지, 현재페이지.. 등을 넘겨주던 NodeJs개발자에겐 신박했지만.. 아쉽게도 특정 포맷을 벗어났더니 에러가 발생했다. 에러는 아래와 같다. 에러 상황 Kaminary에서 제공하는 pagination 페이지를 클릭했을 경우 기존 action으로 넘어가도록 설계되어 있다. 하지만 나는 ajax를 통해 동적으로 렌더링하고 싶은 뷰가 있었고 그 뷰는 각각의 페이징이 필요하다. 동적 뷰를 나타내기 위해서 나는 액션에서 js.erb를 response하는 방식을 사용했는데 js 렌더링시 에러가 발생했다. (아래는 js로 뷰 렌더링했던 경험 글) https://soohey.tistory.c..
1. 구현할 기능은? 특정 옵션이 선택되었을 때 해당 옵션에 관한 데이터 히스토리를 보여주려고 합니다. 옵션은 select 태그로 이루어져 있으며 저는 과제로 예를 들어보겠습니다. 데이터 히스토리는 과제에 코멘트를 달거나 수정할 때마다 DB에 데이터를 쌓고 생성된 시간을 내림차로 정리하여 테이블로 나타낼 것입니다. 2. 로직 생각해보기 처음엔 특정 옵션이 변경될 때마다 ajax를 요청했습니다. 여기서 중요한 점은 dataType을 "script"로 해야된다는 점입니다. 저는 컨트롤러에서 js로 응답할 것이기 때문이죠. comments_controller.rb def get_comment @history = ProjectComment.where(option_id: params[:id]).order(crea..
ActsAsParanoid 활성화 class Paranoiac < ActiveRecord::Base acts_as_paranoid end 기본적으로 ActsAsParanoid는 레코드 삭제가 datetime의 deleted_at라는 열에 저장되어 있다고 가정합니다. acts_as_paranoid 활성화시 발생할 수 있는 문제점 acts_as_paranoid동일한 모델에서 및 ActiveStorage를 사용 하면 SystemStackError 가 발생 합니다. 삭제된 상태의 모델을 직접 생성하거나 삭제된 모델을 업데이트할 수 없습니다. 필터링 ActsAsParanoid에 의해 레코드가 삭제되면 데이터베이스에 액세스할 때 검색되지 않습니다. Paranoiac.all을 해도 삭제된 레코드는 검색되지 않습니다...
Error Can't verify CSRF token authenticity. Completed 422 Unprocessable Entity in 3ms 문제 상황 ajax를 이용해서 data update를 하려고 할 때 422에러와 함께 csrf token 에러가 발생했습니다. 문제 원인 1. 422 422에러는 서버가 요청을 이해했고 요청 문법도 올바르지만 요청된 지시를 따를 수 없음을 의미합니다. 그러므로 클라이언트는 요청을 수정해야할 필요가 있습니다! (err422는 동일한 형태로 다시 보내서는 안됨을 의미함) 2. CSRF token authenticity Can't verify CSRF token authenticity. 는 레일즈에서 제공하는 form태그로 method 요청시 문제가 없는데,..
soohey
'rails' 태그의 글 목록