1

製品を管理する管理者を作成する場合、製品コントローラー用またはモデル用の管理者名前空間のみを作成する必要がありますか?

モデルの名前空間もある場合、新しいアクション フォームに次のコードを使用できません。

<%= form_for [:admin, @product] do |f| %>

私は使用する必要があります

<%= form_for @product do |f| %>

そしてコントローラーで

def new
  @product = Admin::Product.new
end

最善の方法は何ですか?

4

2 に答える 2

3

これを行う最良の方法は

ルート.rb

 namespace :admin do
   resources :products
 end

コントローラー管理者/products_controller.rb

class Admin::ProductsController < ApplicationController
  def new
    @product = Product.new
  end
end

管理者用にモデルに名前を付ける必要はないと思います

于 2013-07-03T11:30:37.027 に答える
1

Product名前空間で使用されるのは、他の場所で使用されるadminのと同じだと思いProductます。したがって、この場合、モデルに名前を付けるべきではありません。

于 2013-07-03T11:30:31.343 に答える