サーチ…


1.浅いの使用

ディープネストを回避する方法の1つは、親の下にスコープされたコレクションアクションを生成して、階層の感覚を得るが、メンバーのアクションをネストしないことです。言い換えれば、最小限の情報量で、リソースを一意に識別するルートを構築するだけです。

resources :articles, shallow: true do
  resources :comments
  resources :quotes
  resources :drafts
end

DSLの浅い方法は、すべてのネスティングが浅いスコープを作成します。前の例と同じルートが生成されます。

shallow do
  resources :articles do
    resources :comments
    resources :quotes
    resources :drafts
  end
end

浅いルートをカスタマイズするためのスコープには2つのオプションがあります。 :shallow_pathは指定されたパラメータでメンバーパスの前に付けます:

scope shallow_path: "sekret" do
  resources :articles do
    resources :comments, shallow: true
  end
end

Rakeコマンドを使用して、以下に定義するように生成されたルートを取得します。

rake routes


Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow