首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Rails find_by访问器

问Rails find_by访问器
EN

Stack Overflow用户
提问于 2013-04-01 02:50:36
回答 1查看 113关注 0票数 1

我可能遗漏了一些简单的东西,但是如何通过非持久化属性找到记录呢?

示例

代码语言:javascript
复制
class Post < ActiveRecord::Base
  attr_accessible :title
  attr_accessor :slug

  def slug
    title.parameterize
  end
end

我在使用Rails 3.2.11

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-04-01 02:55:07

不幸的是,我认为这样做的唯一方法是遍历所有记录,直到找到目标为止,如下所示:

代码语言:javascript
复制
def self.find_by_slug(slug)
   Post.select("title").detect { |post| post.slug == slug }
end

表达同样的逻辑可能有其他方法,但我认为它们都需要大量的Ruby迭代。因此,如果您希望它对于大量的帖子是有效的,最好是持久化该属性。

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

https://stackoverflow.com/questions/15737034

复制
相关文章

相似问题

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