1

Twitterの新しいactiverecord-reputation-systemgemを使用していますが、アプリに登録されていないようです。

インストールするために実行しました(ドキュメントにはタイプミスがあります):

gem install activerecord-reputation-system && rails generate reputation_system && rake db:migrate

それをgemfileに含めて、githubから直接プルし、ローカルサーバーを再起動してみました。エラーは次のとおりです。

ActionController :: RoutingError(未定義のメソッドhas_reputation' for #<Class:0x007fa7ed783ec0>): app/models/post.rb:18:in'app / models / post.rb:1:in <top (required)>' app/controllers/posts_controller.rb:1:in'

このコードで投稿に投票を追加しようとすると:

class Post < ActiveRecord::Base
  belongs_to :user
  has_reputation :votes,
    :source => :user,
    :aggregated_by => :sum
end

同じコードでユーザーに投票を追加しようとすると、次のようになります。

undefined method `has_reputation' for #<Class:0x007fa7efb70388>

app/models/user.rb:17:in `<class:User>'
app/models/user.rb:1:in `<top (required)>'
config/routes.rb:4:in `block in <top (required)>'
config/routes.rb:1:in `<top (required)>'

This error occurred while loading the following files:
   /Users/username/appname/config/routes.rb

ルート.rb、4行目:

devise_for:users、:controllers => {:omniauth_callbacks => "users / omniauth_callbacks"}

何か案は?

4

1 に答える 1

4

アプリで必要とする必要がありreputation_systemます。に追加することでこれを行うことができますGemfile

gem 'activerecord-reputation-system', :require => 'reputation_system'

更新:バージョンの時点で、もう2.0.0必要ありreputation_systemません:

gem 'activerecord-reputation-system'
于 2012-05-22T15:42:52.040 に答える