gpt4 book ai didi

ruby-on-rails - Ruby on Rails 和 mongoid。关系

转载 作者:可可西里 更新时间:2023-11-01 10:04:40 24 4
gpt4 key购买 nike

我有一些关于 RoR 和 MongoDB 的问题(使用 gem mongoid)。例如我有两个集合-用户(字段:id、用户名、年龄)和消息(字段:id、消息、user_to、user_from)。我需要关联这些集合。模型用户-

....
has_many :messages

模型消息-

....
belongs_to :to_user, :class_name => 'User', :foreign_key => 'user_to'
belongs_to :from_user, :class_name => 'User', :foreign_key => 'user_from'

在我看来调用-

- @messages.each do |message|
%tr
%td
= message.message
%td
= message.to_user.username
%td
= message.from_user.username

但它不起作用。请告诉我如何关联它。B.R.

最佳答案

您必须提供反向关系

belongs_to :to_user, :class_name => 'User', :inverse_of => :recieved_messages
belongs_to :from_user, :class_name => 'User', :inverse_of => :sent_messages

用户.rb

has_many :recieved_messages, :class_name => 'Message', :inverse_of => :to_user
has_many :sent_messages, :class_name => 'Message', :inverse_of => :from_user

而且您不需要foreign_keyMongoid 会处理它

关于ruby-on-rails - Ruby on Rails 和 mongoid。关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19047431/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com