[Rails] submit 뒤에 redirect.to 움직이지 않을 때의 대응법
일의 시작
그것은 어느 사이트의 복사본을 만들어 공부하던 중 일어난 일이다.
다음 화면에서formwith를 사용하여 입력 화면을 제작합니다.
항목을 입력한 후 드래프트 저장 버튼을 눌러 DB에 데이터를 저장합니다.
그다음에 레드렉트.to화면으로 옮겼는데 왜 화면이 옮길 수 없어요...
전제 조건
웹 패키지 사용
오류 코드
_form.html.slim
= form_with model: @work do |f|
// 入力項目
= f.submit "下書きを保存", class: "btn btn-outline-primary", id: "draft", name: "draft"
초고 저장 버튼을 누르면workscontroller.실행 rbworks_controller.rb
def create
work = current_user.work.new( post_work )
work.save
redirect_to user_url( current_user ) #ここの部分でエラー出た
end
잘못된 내용
Uncaught ReferenceError: Turbolinks is not defined
까닭
터보링크스가 없다고 합니다.
원래 Redirect."to"는 "turbolinks"와 관계가 있습니까?
많이 알아봤어요.
form_with는 기본적으로 aax로 form을 보냅니다.
그ajax로form을 보내면
대상 컨트롤러를 보내는 Redirectto의 행위는 터보링크스와 관련이 있습니다.
works_controller.rb
def create
work = current_user.work.new( post_work )
work.save
redirect_to user_url( current_user ) #こいつの挙動が少し変わる
end
해결책
터보링크 도입
단말기
yarn add turbolinks
application.jsimport Turbolinks from "turbolinks";
Turbolinks.start();
form에서 aax를 사용하지 않습니다
local: 진짜를 추가해서 aax를 닫습니다
_form.html.slim
= form_with model: @work, local: true do |f|
이제 해결됐어요.끝맺다
만약 오류 등 다른 좋은 해결 방법이 있다면 댓글에 지적해 주세요.
참고로 이것은 복제된 사이트입니다.
UI 같은 게 너무 예뻐서 첫눈에 반했어요.
RESUME
그리고 복사가 너무 어려워서 제가 대신 웹일기를 썼어요.
RESUME의 작가는 위대하다.
Reference
이 문제에 관하여([Rails] submit 뒤에 redirect.to 움직이지 않을 때의 대응법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/Ryoga_aoym/items/ac2918259744da128e86텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)