【问题标题】:Select object where attribute is true having attribute name in Ruby on Rails在 Ruby on Rails 中选择属性为 true 且具有属性名称的对象
【发布时间】:2014-08-26 13:11:34
【问题描述】:

我对 Ruby on Rails 中的 Sqlite 有疑问。我有一个带有一些布尔属性的模型。我从视图中获取属性的名称(数据库中的列),我需要选择所有将该属性设置为 true 的对象。 从this主题我发现,对于搜索查询,我需要这样写:

def self.search(search, id)
 if search
   where(['name LIKE ?', "%#{search}%"])
 else
  scoped
 end
end

我想查询会非常相似,但我真的不知道如何将它传达给数据库。有什么建议吗?

【问题讨论】:

  • 类似:@posts = Post.where(boolean_attribute: true)??
  • 你的modelboolean attribute 的名字是什么?你应该按照@justin 的建议去做。
  • 哦,好吧。我想我应该通过模型...我会尝试
  • 如何提交栏目名称?

标签: ruby-on-rails sqlite


【解决方案1】:

您链接的主题与您的问题无关。

假设您的属性名称是一个字符串并存储在params[:attribute] 中,而Post 是您的模型。

在你的行动中

@posts = Post.where(params[:attribute].to_sym => true)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-06-30
    • 1970-01-01
    • 2022-01-17
    相关资源
    最近更新 更多