[RUBY-ON-RAILS] 삭제 링크 레일 3보기 대신에 "삭제"의 "가져 오기"전송
RUBY-ON-RAILS삭제 링크 레일 3보기 대신에 "삭제"의 "가져 오기"전송
나는 레일 (3)을 사용하여 데이터베이스 게시물의 목록을 출력하는 페이지가 가지고 있어요. 내가 링크에서 게시물을 삭제할 수 있도록하고 싶습니다.
작품 아래의 2 예,하지만 첫 번째는하지 않습니다. 누구를 알고 왜 첫번째 의지하지 사용할 수 있습니까? 내보기에는 다음이 포함됩니다
# this link sends a "GET" request which asks for the #show function
<%= link_to 'Delete', post, :method => :delete %>
# this link sends the proper "DELETE" request which asks for the #destroy function
<%= button_to 'Delete', post, :method => :delete %>
내 루트 파일은 다음을 포함합니다
resources :posts
해결법
-
==============================
1.확인 레이아웃에 섹션은 다음을 포함합니다 :
확인 레이아웃에
섹션은 다음을 포함합니다 :<%= javascript_include_tag :defaults %> <%= csrf_meta_tag %>
레일 3에서 삭제 요청은 요청이 제대로 전송되는지 확인하기 위해 자바 스크립트의 도움으로 처리되고있다. 당신은 CSRF 메타 태그와 필요한 자바 스크립트 코드가없는 경우, 삭제 링크가 작동하지 않습니다. : 기본적으로 자바 스크립트 파일은 다음과 같습니다 - prototype.js에, 그리고 application.js - 다른 사람의 사이에서. 후자는 링크 작업을하게 물건을 포함하지만, 프로토 타입 프레임 워크에 의존한다.
기본 프로토 타입 자바 스크립트 라이브러리를 사용하지 않으려면, 몇 가지 다른 프레임 워크에 대한 application.js의 포트가 있습니다. 당신은 예를 들어, 여기에 jQuery를 하나를 찾을 수 있습니다.
button_to으로 생성 된 HTML 코드는 그 자체로 필요한 모든 정보가 포함로 버튼은 여전히 관계없이 자바 스크립트의 작동합니다. 링크하지 않는 상태에서 버튼의 작품을보고있는 이유입니다.
-
==============================
2.같은 외모
같은 외모
<%= javascript_include_tag :defaults %>
더 이상 지원되지 않습니다
http://apidock.com/rails/ActionView/Helpers/AssetTagHelper/JavascriptTagHelpers/javascript_include_tag
대신 사용해야합니다
<%= javascript_include_tag 'application' %>
-
==============================
3.나는 레일 5.2.3에서 같은 문제가 있었이 나를 도왔다 :
나는 레일 5.2.3에서 같은 문제가 있었이 나를 도왔다 :
레이아웃 머리 :
<%= javascript_include_tag "rails-ujs" %>
설정 / 초기화 / 자산
Rails.application.config.assets.precompile += %w( rails-ujs.js )
-
==============================
4.내 경우, 나는 다음을 사용했다.
내 경우, 나는 다음을 사용했다.
<%= javascript_include_tag :defaults %> <%= csrf_meta_tag %>
또한 단지 기본 프로토 타입 JS 아래 jQuery를 포함하여 jQuery를 사용했다. 즉 갈등의 일종을 일으키는 원인이되었다.
-
==============================
5.파괴 조치는 양식 제출로 수행되어야한다 - http://www.w3.org/2001/tag/doc/whenToUseGet.html#checklist
파괴 조치는 양식 제출로 수행되어야한다 - http://www.w3.org/2001/tag/doc/whenToUseGet.html#checklist
당신은 삭제 방법 또는 사용 형태에 적절하게 버튼 스타일을 지정할 수 있습니다.
-
==============================
6.이 작동합니다. 문제는 당신이 경로를 얻을 수 있도록에게 옳은 길을 통과해야한다는 사실이다.
이 작동합니다. 문제는 당신이 경로를 얻을 수 있도록에게 옳은 길을 통과해야한다는 사실이다.
<%= link_to 'Delete', post_path(post.id), :method => :delete %>
-
==============================
7.레일 5 내 경우에는, 내 레이아웃에 다음과 같은 사용되었다 :
레일 5 내 경우에는, 내 레이아웃에 다음과 같은 사용되었다 :
<%= javascript_include_tag 'application', 'data-turbolinks-track': 'reload' %>
이런 식으로:
... </title> <%= csrf_meta_tags %> <%= csp_meta_tag %> ... <%= javascript_include_tag 'application', 'data-turbolinks-track': 'reload' %> </head>
-
==============================
8.이 ... 그것의 간단한 변화를 시도 ..
이 ... 그것의 간단한 변화를 시도 ..
당신의 route.rb 파일이 추가
얻을 '/리스트 / : list_id로 / 의견 / : ID'=> '댓글 # 파괴'
지금이 변화와의 작업을했다 ..
from https://stackoverflow.com/questions/3774925/delete-link-sends-get-instead-of-delete-in-rails-3-view by cc-by-sa and MIT license
'RUBY-ON-RAILS' 카테고리의 다른 글
[RUBY-ON-RAILS] 레일의 기본 키를 변경하면 문자열이어야합니다 (0) | 2020.02.09 |
---|---|
[RUBY-ON-RAILS] 중첩 된 PARAMS 해시에 무기 호에 메소드를 호출 피하기 위해 깨끗한 방법이 있나요? [복제] (0) | 2020.02.09 |
[RUBY-ON-RAILS] 액티브을 찾을 청소 방법은 지정된 순서대로 id로 객체 (0) | 2020.02.08 |
[RUBY-ON-RAILS] 레일 오류에 루비를 처리하는 방법 : " '보석 액티브 - PostgreSQL의 어댑터를 설치`PostgreSQL의 어댑터를 설치하십시오" (0) | 2020.02.08 |
[RUBY-ON-RAILS] 어떻게 레일 URL 헬퍼에 대한 기본 호스트를 설정합니까? (0) | 2020.02.08 |