복붙노트

[RUBY-ON-RAILS] 튜토리얼을 시작하기에 작동하지 않는 파괴 LINK_TO 4 레일

RUBY-ON-RAILS

튜토리얼을 시작하기에 작동하지 않는 파괴 LINK_TO 4 레일

내가 시작하기 자습서를하고 있어요 (블로그를 만드는)와 LINK_TO 파괴가 제대로 작동하지 않습니다. 터미널에서 항상 #SHOW로 해석합니다.

유사한 문제를 읽고 나는 삭제가 해석 할 수있는 브라우저에 대한 POST로 변환해야 함을 배웠습니다. 이 일어나고있는 것 같지 않습니다.

그것이 내 개발 환경에서 뭔가 있는게 틀림 없어 그래서 나는 물론뿐만 아니라 Lynda.com 레일에 파괴 사용하여 동일한 문제로 실행했다. 나는 맥북 프로 사자의 HTTP 서버에 대한 레일 4, 루비 2.00p274, MySQL은,에 WEBrick을 사용하고 있습니다.

터미널 세션에서 선택 될 때 파괴 :

Started GET "/posts/4" for 127.0.0.1 at 2013-08-09 13:45:20 -0600
Processing by PostsController#show as HTML
  Parameters: {"id"=>"4"}
  Post Load (0.6ms)  SELECT "posts".* FROM "posts" WHERE "posts"."id" = ? LIMIT 1  [["id", "4"]]
  Rendered posts/show.html.erb within layouts/application (0.4ms)
Completed 200 OK in 13ms (Views: 8.6ms | ActiveRecord: 0.6ms)

포트 - controller.rb에서 :

def destroy
    @post = Post.find(params[:id])
    @post.destroy

    redirect_to action: :index
end

index.html.erb에서 :

<% @posts.each do |post| %>
  <tr>
    <td><%= post.title %></td>
     <td><%= post.text %></td>
    <td><%= link_to 'Show', post %></td>
    <td><%= link_to 'Edit', edit_post_path(post) %></td>
    <td><%= link_to 'Destroy',  { action: :destroy, id: post.id }, method: :delete, data: { confirm: 'Are you sure?' } %></td>
  </tr>
 <% end %>

routes.rb에서

Blog::Application.routes.draw do
   resources :posts do
     resources :comments
   end
  root to: 'welcome#index'
end

해결법

  1. ==============================

    1.이 시도

    이 시도

    <%= link_to 'Destroy',  post,  method: :delete, data: { confirm: 'Are you sure?' } %>
    
  2. ==============================

    2.gemfile에 있으며 jquery_ujs이 응용 프로그램 / 자산 / 자바 스크립트에 포함되어 있는지 보석 'JQuery와 레일을'확인 / 파일을 application.js

    gemfile에 있으며 jquery_ujs이 응용 프로그램 / 자산 / 자바 스크립트에 포함되어 있는지 보석 'JQuery와 레일을'확인 / 파일을 application.js

    //= require jquery
    //= require jquery_ujs
    

    출처 : https://github.com/rails/jquery-ujs

  3. ==============================

    3.나는 레일에 대해, 같은 문제가 있었다 4.2.X. 내 모든 자바 스크립트 파일을 검사하지만이 일을 만들 수 없습니다. u는, u는 PARAMS에서 'authenticity_token을'누락됩니다 서버 요청을 자세히 보면 사용자가 로그 아웃됩니다 있도록. 레일 4.1 이상 유 LINK_TO 대신 button_to 사용해야

    나는 레일에 대해, 같은 문제가 있었다 4.2.X. 내 모든 자바 스크립트 파일을 검사하지만이 일을 만들 수 없습니다. u는, u는 PARAMS에서 'authenticity_token을'누락됩니다 서버 요청을 자세히 보면 사용자가 로그 아웃됩니다 있도록. 레일 4.1 이상 유 LINK_TO 대신 button_to 사용해야

  4. ==============================

    4.난 그냥 자산 / 자바 스크립트 / application.js에 추가하여, 문제를 해결

    난 그냥 자산 / 자바 스크립트 / application.js에 추가하여, 문제를 해결

    //= require jquery_ujs
    
  5. ==============================

    5.당신이 레이크 경로를 통해 삭제 REST 방식을 가지고 있는지 확인합니다.

    당신이 레이크 경로를 통해 삭제 REST 방식을 가지고 있는지 확인합니다.

    DELETE /articles/:id(.:format)                     articles#destroy
    

    난 단지 내가 둘 다하고 있어요으로이 블로그 버전과 같은 문제가 생겼어요. http://blog.8thcolor.com/en/2011/08/nested-resources-with-independent-views-in-ruby-on-rails/

    나는 또한 그 안에 웹 콘솔 및 놀리려는를 사용하는 방법을 배우려고 노력하고있다. 내 문제는의 표시 쇼 방법하지만 의지를 파괴하지 않는 binding.pry입니다. 즉, 잘못된 링크를 잘해야 하더군요? (가) 심지어 방법을 파괴하는이 점점 아니에요. 귀하의 답변에 대한 여러분 모두 감사합니다. 우리는 일을 우리가하지 않는 시도해야합니까? 견딜 수 없는

    <td><%= link_to 'Destroy', { action: :destroy, id: post.id }, method: :delete, data: { confirm: 'Are you sure?' } %></td> 
    

    하나에 대한 작업에 갈 수 없습니다.

    여기에 그가 가지고 무엇을

    <td><%= link_to 'Destroy', [comment.post, comment], :confirm => 'Are you sure?', :method => :delete %></td>
    

    당신은 여기에 댓글을 삭제하고자하기 때문이다.

    그러나 지금까지 다음과 같은 것들을 결합하는 오류를 제공하지 않습니다하지만 컨트롤러에 방법을 파괴에서 나는 여전히 binding.pry이 없습니다.

    <td><%= link_to 'Destroy', [comment.post, comment], method: :delete, data: { confirm: 'Are you sure?' } %></td>
    

    나는 당신과 같은 확인이 기대 결코.

    그래서 의심와 jQuery로에 무슨 일이 일어나고 있는지 알아 내려고 시도 않습니다. 나는 내 사건이었다 확인할 수 있지만이 Google 검색에 표시하기 때문에 나머지는 내가 nubes 떠날 것이다.

  6. ==============================

    6.2013년 8월 9일 13시 45분 20초 -0600에서 127.0.0.1을위한 시작 "/ 글 / 4"

    2013년 8월 9일 13시 45분 20초 -0600에서 127.0.0.1을위한 시작 "/ 글 / 4"

    이게 문제 야. 귀하의 링크에서 삭제 : 삭제 링크는 GET HTTP 동사 당신이 방법을 사용하더라도를 사용하고 있습니다.

    다음 SO 스레드를 확인하세요

  7. ==============================

    7.JS 라인 아래에 포함

    JS 라인 아래에 포함

    //= require jquery_ujs
    

    보석을 포함한다 :

    gem 'jquery-rails'
    

    링크를 파괴 :

    <%= link_to "Logout", destroy_user_session_path %>
    
  8. ==============================

    8.저도 같은 문제를 가지고 내가 --skip-자바 스크립트와 동일한 -J 내 레일 응용 프로그램을 만들어 낸 것을 깨달았다. 당신은 자바 스크립트 작업이 사용할 필요가있다; 삭제를 확인하는 팝업의 부족은 죽은 공짜입니다.

    저도 같은 문제를 가지고 내가 --skip-자바 스크립트와 동일한 -J 내 레일 응용 프로그램을 만들어 낸 것을 깨달았다. 당신은 자바 스크립트 작업이 사용할 필요가있다; 삭제를 확인하는 팝업의 부족은 죽은 공짜입니다.

  9. ==============================

    9.나는 바로이 문제를 가지고 있었다 그것은 바로 내 편집기 (OSX에 ST2)에 코드를 붙여 넣기 / 가이드의 코드 블록을 세 번 클릭하고 복사에 의해 발생했다.

    나는 바로이 문제를 가지고 있었다 그것은 바로 내 편집기 (OSX에 ST2)에 코드를 붙여 넣기 / 가이드의 코드 블록을 세 번 클릭하고 복사에 의해 발생했다.

    이 같은 링크 외모에 대해 생성 된 HTML 있는지 확인해야한다 :

    <a data-confirm="Are you sure?" data-method="delete" href="/posts/3/comments/3" rel="nofollow">Destroy Comment</a>
    

    그렇지 않고 대신 다음과 같은 경우, 자바 스크립트가 적용되지 않습니다 :

    <a href="/posts/3/comments/3"                data="{:confirm=&gt;&quot;Are you sure?&quot;}"                method="delete">Destroy Comment</a>
    

    href를하고, 구문 분석되지 않은 루비 사이의 큰 격차는 스크립트에 복사되는 설명서에 사용 된 비 깨는 공간 (유니 코드 문자 \ u00a0)에 의해 발생합니다.

    이 스크립트 구문 분석 오류가 발생하지 않도록 내가 왜 아니에요.

  10. ==============================

    10.나는 배리와 같은 문제가 있었다. 확인 당신이있는 거 복사 / 당신의 /app/views/index.html.erb 파일에 제대로 붙여 렌더링되는 HTML을 검사합니다.

    나는 배리와 같은 문제가 있었다. 확인 당신이있는 거 복사 / 당신의 /app/views/index.html.erb 파일에 제대로 붙여 렌더링되는 HTML을 검사합니다.

  11. ==============================

    11.나는 같은 문제가 없었다. 내 경우, 나는 변화 \ 응용 프로그램 \ 전망 \ 레이아웃 \에서 application.html.erb 파일을했다

    나는 같은 문제가 없었다. 내 경우, 나는 변화 \ 응용 프로그램 \ 전망 \ 레이아웃 \에서 application.html.erb 파일을했다

    <%= stylesheet_link_tag    'application', media: 'all', 'data-turbolinks-track' => true %>
    <%= javascript_include_tag 'application', 'data-turbolinks-track' => true %>
    

    <%= stylesheet_link_tag    'default', media: 'all', 'data-turbolinks-track' => true %>
    <%= javascript_include_tag 'default', 'data-turbolinks-track' => true %>
    

    내 최초의 레일 문제를 방지 할 수 있습니다. 그러나 그것은 분명히 자바 스크립트 실행을 망가과 문제를 파괴 일으켰습니다. 따라서 원래의 상태로 \ application.html.erb 파일을 사용자의 \ 응용 프로그램 \ 전망 \ 레이아웃을 롤백하고, 여기로이 문제를 처리

    ExecJS :: ProgramError는 페이지 # 홈에 레일?

    evedovelli 대답 (창에서 커피 스크립트 보석에 대한).

  12. ==============================

    12.저도 같은 문제가있어. 나는이 방법으로 해결 :

    저도 같은 문제가있어. 나는이 방법으로 해결 :

    내 ENV. 입니다 : A. 루비 2.2.4p230 (2015년 12월 16일 수요일 수정 53,155) 64-mingw32] B. 레일 4.2.5 C. 브라우저 : Firfox 44.02

  13. ==============================

    13.LINK_TO 일 듯 대신 button_to 방법, 마이너스 (I 중요하다고 생각)이 확인되지 않은 사실을 사용.

    LINK_TO 일 듯 대신 button_to 방법, 마이너스 (I 중요하다고 생각)이 확인되지 않은 사실을 사용.

    내 경우에는, 내가 사용되었다에 레일-반응 다중 레이아웃을했다.

    추가 <% = javascript_include_tag '응용 프로그램', '데이터 turbolinks 트랙': '재 장전'%> 내 안녕하세요 세계 레이아웃 문제를 해결했습니다.

  14. from https://stackoverflow.com/questions/18154916/rails-4-link-to-destroy-not-working-in-getting-started-tutorial by cc-by-sa and MIT license