第12回 Turbo Driveとは?

はじめに

Ruby on Rails 7では、この目的を達成するためにHotwireスタックの一部であるTurbo Driveが導入された。この記事では、Turbo Driveの核となる機能の一つ、**turbo_method**について詳しく見ていく。

Turbo Driveとは?

Turbo Driveは、Railsアプリケーションのページ遷移とフォーム送信を高速化し、SPA(Single Page Application)に似た体験を提供するJavaScriptのライブラリである。全ページリロードの必要性を排除し、部分的なページ更新によって効率的なナビゲーションを実現する。

turbo_methodの役割

**turbo_methodは、Turbo Driveを使用する際に、HTMLフォームやリンクで使用されるHTTPメソッドを指定するためのデータ属性である。通常のリンクはGETリクエストしか生成できませんが、turbo_method**を使用することで、DELETEやPOSTなど他のHTTPメソッドを発行できるようになる。

turbo_methodの使用例(例: 削除)


<%= link_to '削除', tweet_path(tweet), data: { turbo_method: :delete } %>

上記の例では、**link_toヘルパーを使用して「削除」というテキストを持つリンクを生成しています。data: { turbo_method: :delete }**によって、このリンクがクリックされたときにDELETEリクエストを発行し、対象のツイートを削除することを指示している。

 

まとめ

Turbo Driveは、Railsアプリケーションにおける強力なツールである。