我正在使用rails 4并试图实现一个Notif
模型,它应该有一个看到它的用户数组。
我的想法是使用has-many关系(notif has_many :users
),在这里我将看到notif的用户添加到users
。我现在遇到的问题是我不能调用@notif.users
,因为它声明column users.notif_id does not exist
,因为我没有使用belongs_to
。
一种解决方案是使用多对多关系;但是,我希望避免为每个查看通知的用户创建单独的关联(试图节省数据库空间)。
有没有一种方法可以有效地拥有一个没有users
关系的has_many
字段?我想我只是想在我的notif模型中存储一个用户id数组。
最佳答案
如果您使用的是关系数据库,尽管这是一个正确的全方位关系,但activerecord不会很好地与您配合(如果有的话)。
另外,需要注意的是,在2015年,试图找到一个全方位的activerecord解决方案要比额外的数据库条目昂贵得多。