Equipment::Feature
管理部分に名前空間モデルと名前空間コントローラーがありますAdmin::Equipment::FeaturesController
。モデルは汎用的で、:admin
名前空間内およびパブリック Web サイト用として使用されます。:admin
と:equipment
名前空間のルーティングを設定しました
namespace :admin do
namespace :equipment do
resources :features
end
end
これにより、次のルートが得られます。
admin_equipment_features GET /admin/equipment/features(.:format) admin/equipment/features#index
POST /admin/equipment/features(.:format) admin/equipment/features#create
new_admin_equipment_feature GET /admin/equipment/features/new(.:format) admin/equipment/features#new
edit_admin_equipment_feature GET /admin/equipment/features/:id/edit(.:format) admin/equipment/features#edit
admin_equipment_feature GET /admin/equipment/features/:id(.:format) admin/equipment/features#show
PUT /admin/equipment/features/:id(.:format) admin/equipment/features#update
DELETE /admin/equipment/features/:id(.:format) admin/equipment/features#destroy
かなり標準的なもの。しかし、アドレスすると例外/admin/equipment/features
がスローされますuninitialized constant Admin::Equipment::FeaturesController::Equipment
#index
Admin::Equipment::FeaturesController
私のルックスのアクション
def index
@features = Equipment::Feature.all
end
Admin::Equipment
名前空間を宣言するまで、うまくいったようです。みたいな前はAdmin::EquipmentFeaturesController
これはある種の名前空間の衝突だと思いますが、わかりません。どこから来たのでしょうか?
前もって感謝します!
UPDATE Feature
モデル(STIパターン使用)
class Equipment::Feature < ActiveRecord::Base
attr_accessible :category_id, :name_en, :name_ru, :type
belongs_to :category, :class_name => 'Equipment::Category'
has_many :item_features, :class_name => 'Equipment::ItemFeature'
has_many :items, :through => :item_features
translates :name
end
class FeatureBoolean < Equipment::Feature
end
class FeatureNumeric < Equipment::Feature
end
class FeatureString < Equipment::Feature
end
class FeatureRange < Equipment::Feature
end
UPDATE2#index
以下の回答による
修正アクションにより、問題が解決しました。新しいコード:
def index
@features = ::Equipment::Feature.all
end