将元素添加到ActiveRecord Relation对象的开头

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将元素添加到ActiveRecord Relation对象的开头相关的知识,希望对你有一定的参考价值。

我有以下内容

@blogs = Blog.all

我想将一个元素推送到该ActiveRecord Relation对象的开头。这不适用于数组:

@blogs.unshift(Blog.find(123))

如何在该activerecord关系对象中添加记录?

答案

尝试类似的东西:

@blogs = []
@blogs << Blog.find(123)
@blogs += Blog.where.not(id: 123)

注意:@blogs仍然是array object而不是active record object

另一答案
@blogs = Blog.all.to_a
@blogs.unshift(Blog.find(123))

以上是关于将元素添加到ActiveRecord Relation对象的开头的主要内容,如果未能解决你的问题,请参考以下文章

如何向 Rails 4 中的所有 ActiveRecord 模型添加 `audited` 方法调用?

如何使用 javascript 将 css 类分配给 svg 元素的标题?

验证外部gem的ActiveRecord模型的最佳方法

通过扩展向 ActiveRecord 模块添加自定义验证?

仅列出 ActiveRecord 子类方法

ActiveRecord::RecordNotFound in UsersController#update