如何检查当前用户是否与joinable中的当前帖子相关联?

时间:2018-12-22 22:43:03

标签: ruby-on-rails

我有一个具有User模型(使用Devise gem创建)和Post模型的应用程序。用户和模型都具有has_and_belongs_to_many关系。我有一个加入表,在其中添加了每个帖子创建者(以后,我将允许帖子创建者为该帖子添加更多编辑器,但这并不重要)。问题是当我想检查current_user是否是允许编辑帖子的用户之一。

我已经尝试检查@ post.users中是否包含当前用户,但这似乎不是解决此问题的有效方法。

@post.users.include?(current_user)

此刻,我什至理解了为什么它不起作用,但是我不知道其他函数是否根据数据库中的users_posts表返回布尔值。

1 个答案:

答案 0 :(得分:1)

这可能会帮助您:

可以使用truefalse进行检查,如本博文所述 Rails - check if record exists in has_many association

OR

@post.users.find(current_user.id)

这将返回找到的用户对象,否则将引发错误ActiveRecord::RecordNotFound