首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >rails,将3种不同的模型与Devise相关联

rails,将3种不同的模型与Devise相关联
EN

Stack Overflow用户
提问于 2014-10-31 01:55:23
回答 1查看 38关注 0票数 0

在过去的几个小时里,我一直在思考这个问题,我想我应该向这里的专家寻求一些帮助。

我有3个模型:用户,帖子,评论。我正在使用Devise进行身份验证。

用户有一个头像字段。发布has_many评论。评论belong_to帖子。

我想基本上在评论中显示用户的头像(位于用户模型中)。获取评论用户头像的语法是什么?

现在,我有:

代码语言:javascript
复制
@post.user.avatar

这是可行的,但基本上显示了用户在每个评论头像图片上发布的内容(不正确)。我需要以某种方式获得评论者的头像,但不确定对于控制器查询/视图/模型调用,正确的方法是什么。

关联:

代码语言:javascript
复制
Post:
has_many :comments, dependent: :destroy
belongs_to :user

Comment:
belongs_to :post

User:
has_many :posts, dependent: :destroy

提前谢谢你!

EN

回答 1

Stack Overflow用户

发布于 2014-10-31 12:25:58

您缺少评论和用户之间的关系。评论必须由用户来做,对吧?这在你说的话里是不存在的。评论确实属于帖子,但它们同时属于发表评论的用户。

现在,您只显示了发帖的人的头像,因为这是帖子的所有者。

因此,对于给定帖子的第一条评论,它应该是@post.comments.first.user.avatar。现在,显然这需要一些重构,但为了清楚起见,我就这样留了下来。例如,您可以在视图中编写内容以显示帖子的评论,然后创建一个评论部分视图来处理抓取评论用户的头像并显示它。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26660057

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档