[前][次][番号順一覧][スレッド一覧]

rails:3777

From: Nobukazu TAKAI <nocturne_2_eflat_9_2@m...>
Date: Fri, 01 Jun 2012 22:49:15 +0000 (GMT)
Subject: [rails:3777] Re: safari と firefox の挙動の違いについて

前島様
高井です

お返事有り難うございました。
前島様の仰る通り,ブラウザの java script の設定の問題でした。

この動作を利用すれば,ブラウザの java script の設定の判断を実装できそうなので,作ってみようと思います。


2012年6月01日 17:37、前島真一 <netwillnet@g...>のメッセージ:

前島です。 

> <a href="/session" data-method="delete" rel="nofollow">ログアウト</a>

というリンクをクリックすると、 普通なら GET /session というリクエストを発行します。
DELETEメソッドになるのは、jquery-rails という gem 経由で jquery_ujs.js を読み込んでいて、jquery_ujs.js が data-method="delete" のような属性を持つリンクをクリックした挙動を差し替えているためです。

なので、例えば js をオフにすると GET /session というリクエストになります。jsまわりの設定を確認してみるといいと思います。

日付:2012年6月1日金曜日、時刻:11:42、差出人:Nobukazu TAKAI:

> 高井と言います。
> 基本的なことかもしれませんが,どうしても解決できないので皆様のお知恵をお借りできないでしょうか?
> rails のバージョンは 3.2.3 です。
> 
> <%= link_to 'ログアウト', session_path, :method => 'delete' %>
> 
> で記述して作成された HTML は以下のようになります(safari でも Firefox でも同じことを確認しました)。
> <a href="/session (view-source:http://localhost:3000/session)" data-method="delete" rel="nofollow">ログアウト</a>
> これを safari で実行するとログには
> Started DELETE "/session" for 127.0.0.1 at Fri Jun 01 11:24:12 +0900 2012 Processing by SessionsController#destroy as HTML
> と希望通りの動作をします。
> しかし Firefox で同じサイトでログアウトを実行すると
> Started GET "/session" for 127.0.0.1 at Fri Jun 01 11:25:24 +0900 2012 AbstractController::ActionNotFound (The action 'show' could not be found for SessionsController):
> となり show を実行しようとします。
> routes.rb には
> resource :session
> と記述しています。
> rake routes の実行結果は
> %rake routes session POST /session(.:format) sessions#create new_session GET /session/new(.:format) sessions#new edit_session GET /session/edit(.:format) sessions#edit GET /session(.:format) sessions#show PUT /session(.:format) sessions#update DELETE /session(.:format) sessions#destroy 
> 
> となります。
> route の設定から確かに GET /session は show を実行することは分かりますが,そもそもHTMLでそのような動作を設定していないのになぜ Firefox では DELETE ではなく GET となってしまうのか全く分かりません。
> どなたか解決策をご存知の方がいましたら,教えて頂けると助かります。
> 
> 宜しくお願い致します。 




添付ファイル

[前][次][番号順一覧][スレッド一覧]

   @  3775 2012-06-01 04:42 [nocturne_2_eflat_9_2] safari と firefox の挙動の違いについて  
      3776 2012-06-01 10:37 ┗[netwillnet@g...     ]                                       
-> @  3777 2012-06-02 00:49  ┗[nocturne_2_eflat_9_2]