Dre*_*rew 1 ruby ruby-on-rails
我熟悉在两个字段上进行查找:
user = User.find_by_username_and_email(params[:username], params[:email])
Run Code Online (Sandbox Code Playgroud)
但是,我想检索用户名或电子邮件等于相同字段的记录。就像是:
user = User.find_by_username_or_email(params[:text])
Run Code Online (Sandbox Code Playgroud)
我知道这是行不通的。这可能吗?任何帮助都值得赞赏。
只是为了扩展@xdazz 的答案,您可以使用以下语法来允许按相同值搜索任意数量的字段,而无需重复该值:
user = User.where('username = :text or email = :text', :text => params[:text]).first
Run Code Online (Sandbox Code Playgroud)
例如,当您搜索邮政地址字段时非常有用。
你可以使用.where:
user = User.where('username = ? or email = ?', params[:text], params[:text]).first
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1718 次 |
| 最近记录: |