Railsドキュメント

実行前にリクエストのバリデーション

説明

アクションの実行前にチェック

使い方

verify(オプション)

オプション

オプション 説明
:params パラメータがあるか
:session セッションにキーがあるか
:flash フラッシュの中に指摘したキーのデータあるか
:method HTTPのメソッドが指定したものか
:xhr アクションがAjaxから呼ばれたか
:add_flash フラッシュにデータを追加
:add_headers HTTPのヘッダに「カラム名:値」を追加
:redirect_to 別のアクションにリダイレクト
:render 別のアクションのテンプレートでレンダリング
:only 適用するアクション
:except 適応しないアクション

セッションにuser_idがない場合は、indexにリダイレクト

verify session: "user_id", redirect_to: { action: "index" }

POSTでアクセスしていない場合は、indexにリダイレクト

verify method: :post, redirect_to: { action: "index" }

create, update, deleteアクション以外は、indexにリダイレクト

verify only: [:create, :update, :delete], :redirect_to { action: "index" }

ソースコード

キャッシュストアの設定

説明

キャッシュストアを設定

使い方

config.cache_store = キャッシュの種類

キャッシュの種類

キャッシュの種類 説明
:memory_store プロセス内のメモリ
:file_store ファイルシステム
:mem_cache_store memcached
:null_store キャッスをしない

memcachedに保存

config.cache_store = :mem_cache_store

設定のオートロードをするかの設定

説明

「false」を設定すると、設定のオートロードを無効
config.cache_classesが「true」のときにのみ有効

使い方

config.dependency_loading

デフォルトの設定

環境 設定
development false
test false
production true

config.dependency_loading = true

assetsでコンパイルする設定

説明

assetsでコンパイルする設定

使い方

config.assets.compress

config.assets.compress = true

モデルから本体を持つ任意のタグを生成

説明

モデルからタグを動的に生成
HTMLとERBが混ざってしまう場合などに使用するとすっきり表現できる

使い方

content_tag_for(タグの名前, モデル [, オプション])

<%= content_tag_for(:tr, @person) do %>
  <td><%= @person.first_name %></td>
  <td><%= @person.last_name %></td>
<% end %>

ソースコード

リクエストの前に実行する処理

説明

リクエストの前に実行する処理

使い方

ActionDispatch::Callbacks.before

 ActionDispatch::Callbacks.before do
  if Object.const_defined?(:Example)
    if Example.const_defined?(:MyClass)
      Example.send(:remove_const, :MyClass)
     end
  end

  require 'example/my_class'
end