我想使用Rails控制台获得一个姓氏以'x'开头的用户数组

时间:2017-01-06 18:56:01

标签: ruby-on-rails postgresql-9.4

我尝试过这样的事情:

users=User.where :conditions => "last_name LIKE ?" "%X"
and
users=User.where("last_name.each_char.first = 'X'")
and
users=User.where(:last_name.to_s.char.first => "X")
and
users=User.where "last_name.initial" == "X"
users=User.where("last_name".start_with ? "X")
users=User.where("last_name".match(/^X/))
users=User.where(:last_name[0] == "X")

还有一大堆失败的尝试。 user.last_name是一个有效的字符串,我想我理解为什么:last_name,这是一个符号,不起作用,所以我也做了“last_name”[0]和:last_name.to_a [0]

一些尝试,例如这个

[64] pry(main)> user=User.where("last_name[0] = 'X'").all
 User Load (0.9ms)  SELECT "users".* FROM "users" WHERE (last_name[0]     = 'X')
=> #<User::ActiveRecord_Relation:0x3723938>

返回了有效的记录关系 任何帮助最受赞赏!

1 个答案:

答案 0 :(得分:2)

你很亲密!尝试:User.where('last_name like ?', 'x%')