ユーザーには複数の投稿があり、投稿はユーザーに属します。どちらにも場所があります。私は各投稿の場所を保存し、ユーザーの場所を最新の投稿場所に更新したいと思います。 after_saveは行く方法ですか?私はMongo DBにはとても慣れていません。Mongoを使用して、after_saveという子の親モデルを更新します。
ポストモデル
class Post
include Mongoid::Document
belongs_to :user
after_save :update_user_location
field :location, :type => String
def update_user_location
#update user's location
end
end
ユーザーモデル
class User
include Mongoid::Document
has_many :posts
field :location, :type => String
end
(ちょうど最も最近のポストの場所を取得するには言わないでください、私は理由別々に保管してくださいする必要があります... thx)
アレックス、これは私の問題でした。私はbefore_saveをafter_validationに変更しようとしました。奇妙な、私はそれがちょうど私だと思った...私はまだmongoの新しいです – kinet
ええ、まだいくつか風変わりな行動がありますが、これはmongodbよりむしろmongodbです私は信じています – Alex