美好的一天!我使用 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"])
编辑:使用js数组 native 查找方法并假设这是一个数组_($scope.reasonOfRejection)
你可以这样做
_($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)
关于javascript - Ruby on Rails 使用 OR 查找,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60997848/