我有一个collection_select,我想对其进行排序。通常没问题,只需将 acollection.order(name DESC)
或其他任何内容传递到 collection_select 的集合字段中即可。
不幸的是,我的排序标准是一个外来属性,类似于:(假设我们有一个帖子和一个作者模型,我想按作者姓名对帖子进行排序)
f.collection_select(:post, :post_id, Posts.order(author.name DESC), :id, :post_with_author_name_as_prefix)
...这当然行不通。
(post_with_author_name_as_prefix,文本方法,将是帖子模型中的虚拟方法,返回类似于“John Doe:随机想法”的内容,这实际上是该排序标准的原因......)
任何想法如何在没有大连接、数据库视图和类似的东西的情况下解决这个问题?