0

私はこのクラスを持っています。

ユーザー:

class User < ActiveRecord::Base
  attr_accessible :email, :name
  has_many :berichten
end

カテゴリー:

class Category < ActiveRecord::Base
  attr_accessible :name
  has_many :berichten
end

Berichten :

class Berichten < ActiveRecord::Base
  attr_accessible :bericht, :user
  belongs_to :user
  belongs_to :category
end

その後、プロジェクトを作成しました。

しかし、私が行ったとき

http://localhost:3000/admin/berichtens 

次のメッセージが表示されます。

undefined method `user_id_contains' for #<MetaSearch::Searches::Berichten:0x007f72300bc8f0>

これは、berichten が次のようなネストされたルートであるためである可能性があります。

Tamara::Application.routes.draw do
  ActiveAdmin.routes(self)

  devise_for :admin_users, ActiveAdmin::Devise.config

  resources  :users

  resources :category do 
     resources :berichten
  end 
 end

これを解決するには?

ロエロフ

編集 1: ここでソース ツリー全体を見つけることができます: https://github.com/roelof1967/tamara_site/tree/admin_section

編集 2: 開発ログ: https://gist.github.com/3933601

編集3:そしてここにコントローラー:https://gist.github.com/3937461

4

2 に答える 2

4

私はレベル 1 のユーザーなので、上記の質問にはコメントできません。関連するコントローラーコードも共有してください。問題はコントローラーにあります。

于 2012-10-23T06:39:29.687 に答える
1

berichtens テーブルには user_id フィールドと category_id フィールドがありません: https://github.com/roelof1967/tamara_site/blob/admin_section/db/schema.rb#L49-54

で移行ファイルを作成します

add_column :berichtens, :user_id, :integer
add_column :berichtens, :category_id, :integer
于 2012-10-24T01:06:19.767 に答える