我一直在使用https://github.com/ryanto/acts_as_votable gem 作为帖子的保存按钮。到目前为止一切都很好。
但是现在我创建了一个单独的脚手架(文章)并想添加相同的保存按钮。因此用户可以保存帖子和文章,然后在他们的个人资料中查看。
现在我遇到了问题,因为一些文章记录与帖子记录具有相同的 ID。另外,我什至现在如何显示已保存的记录,因为我不知道来自文章或帖子的 id 是什么。
有没有办法通过 Acts As Votable Gem 解决这个问题?
谢谢!
我一直在使用https://github.com/ryanto/acts_as_votable gem 作为帖子的保存按钮。到目前为止一切都很好。
但是现在我创建了一个单独的脚手架(文章)并想添加相同的保存按钮。因此用户可以保存帖子和文章,然后在他们的个人资料中查看。
现在我遇到了问题,因为一些文章记录与帖子记录具有相同的 ID。另外,我什至现在如何显示已保存的记录,因为我不知道来自文章或帖子的 id 是什么。
有没有办法通过 Acts As Votable Gem 解决这个问题?
谢谢!
act_as_voteable 的当前版本 (0.12.0) 开箱即用。Vote 模型有一个 votable_type 列,可以引用多个模型。
#<ActsAsVotable::Vote:0x00007f9f6558a9b0
id: 4,
votable_type: "Post",
votable_id: 1,
voter_type: "User",
voter_id: 2,
vote_flag: true,
vote_scope: "save",
vote_weight: 1,
created_at: Mon, 31 Dec 2018 13:39:34 UTC +00:00,
updated_at: Mon, 31 Dec 2018 13:39:34 UTC +00:00>,
#<ActsAsVotable::Vote:0x00007f9f6558a4d8
id: 5,
votable_type: "Article",
votable_id: 3,
voter_type: "User",
voter_id: 2,
vote_flag: true,
vote_scope: "article",
vote_weight: 1,
created_at: Tue, 01 Jan 2019 15:15:27 UTC +00:00,
updated_at: Tue, 01 Jan 2019 15:15:27 UTC +00:00>
要显示保存的记录,您可以使用类似的范围
@user.votes.for_type(Post)
@user.votes.for_type(Article)
我希望这回答了你的问题。