javascript - Ruby on Rails 使用 OR 查找
问题描述
再会!我在后端使用 AngularJS 和 Ruby on Rails,我想知道如何使用 find 使用这两个词中的任何一个来搜索对象数组。
console.log(_($scope.reasonOfRejection).find({name: {en: 'Black Flagged'}} || {name: {en: 'Black Flag'}}))
解决方案
您可以使用 find_by 因为 find 用于 ids,您可以这样做:
User.find_by(name: ["Black Flagged", "Black Flag"])
_($scope.reasonOfRejection)
编辑:使用 js 数组本机查找方法并假设这是您可以执行的数组
_($scope.reasonOfRejection).find(({ name }) => (
name.en === "Black Flagged" || name.en === "Black Flag"
))
Find 将返回与条件匹配的第一个项目,如果要返回匹配项目的数组,请改用过滤器。
const array = [{name: { en: "another item"}}, {name: { en: "item"}}, {name: { en: "Black Flagged"}}]
const match = array.find(({ name }) => (
name.en === "Black Flagged" || name.en === "Black Flag"
))
console.log(match)
推荐阅读
- python - 获取 PyCharm 项目内容根的代码
- swift - 类的变量名与函数名相同
- java - java-无法在数据库表中设置值以反映更改
- javascript - 如何在txt文件cshtml中增加值
- python - Python 3 获取当前列表循环的深度
- javascript - 使用 Puppeteer 为图像抓取无限滚动网页,但在等待异步中不返回任何内容
- python - 在 Python 中的 OpenCV 中保存和加载 SVM
- sql-server - 删除并重新创建 SQL Server 表后如何恢复它?
- java - 我是创建多个流程构建器还是只创建一个?
- python-3.x - 大数据集上的汉明距离比较