首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >按投票数据库对帖子进行排序

按投票数据库对帖子进行排序
EN

Stack Overflow用户
提问于 2015-12-04 09:34:07
回答 1查看 30关注 0票数 0

我有一个页面,用户可以添加收藏。现在,页面将他们的帖子排序到收藏夹中,但在帖子数据库created_at字段中按.order(created_at::desc)对它们进行排序。我如何将其更改为使用投票表和它的created_at frield。

代码语言:javascript
复制
@posts = Post.where(id: current_user.find_voted_items.map(&:id)).order(created_at: :desc).paginate(:page => params[:page], :per_page => 36)

下面是相关的模式

代码语言:javascript
复制
create_table "votes", force: :cascade do |t|
  t.integer  "votable_id"
  t.string   "votable_type"
  t.integer  "voter_id"
  t.string   "voter_type"
  t.boolean  "vote_flag"
  t.string   "vote_scope"
  t.integer  "vote_weight"
  t.datetime "created_at"
  t.datetime "updated_at"
end

create_table "posts", force: :cascade do |t|
  t.string   "soundcloud"
  t.string   "title"
  t.string   "artist"
  t.string   "audio"
  t.string   "image"
  t.datetime "created_at",                            null: false
  t.datetime "updated_at",                            null: false
  t.string   "download"
  t.integer  "cached_votes_total",      default: 0
  t.integer  "cached_votes_score",      default: 0
  t.integer  "cached_votes_up",         default: 0
  t.integer  "cached_votes_down",       default: 0
  t.integer  "cached_weighted_score",   default: 0
  t.integer  "cached_weighted_total",   default: 0
  t.float    "cached_weighted_average", default: 0.0
end

谢谢

EN

回答 1

Stack Overflow用户

发布于 2015-12-04 10:56:06

如果您想返回posts,使用posts数据库更有意义。如果你想使用投票数据库返回一个帖子的所有选票,你可以尝试这样做:

@votes = Vote.where(votable_id: some_post.id).order('created_at DESC')

但我不确定我明白你想从投票数据库中返回什么。

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

https://stackoverflow.com/questions/34079462

复制
相关文章

相似问题

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