主なオブジェクトに Mongoid を介して MongoDB を使用する RoR でアプリケーションを構築しようとしていますが、意見https://github.com/leehambley/opinions/を介して Redis を使用する好き嫌いのプロセスがあります。
ある程度は機能しますが、オブジェクトでメソッドを実行すると、メソッドが自動生成されるはずの「undefined method `like_by'」というエラーが表示されます。
私のモデルは次のようになります。
class Punchline
include Mongoid::Document
include Opinions::Pollable
opinions :like, :dislike
field :key, type: String
field :text, type: String
field :won, type: Boolean
field :created, type: Time, default: ->{ Time.now }
field :score, type: Integer
index({ key: 1 }, { unique: true, name: "key_index" })
belongs_to :user
embedded_in :joke
end
そして私は実行します:
user = User.find(session[:userid])
@joke.punchlines.sample.like_by(user);
しかし、未定義のメソッドエラーで失敗します:(
意見をどこか先に初期化する必要がありますか
/config/initializers/opinions.rb
Opinions.backend = Opinions::RedisBackend.new
Redis.new(:host => 'localhost', :port => 6379)