MongoMapperでは、次のクエリを使用して、正規表現の一致に基づいてアイテムを検索できます。
Foo.where(:name => /Foo.*/)
name
フィールドが一致しないアイテムを検索するにはどうすればよい/Foo.*/
ですか?
MongoMapperでは、次のクエリを使用して、正規表現の一致に基づいてアイテムを検索できます。
Foo.where(:name => /Foo.*/)
name
フィールドが一致しないアイテムを検索するにはどうすればよい/Foo.*/
ですか?
使用できます$not
db.customers.find( { name : { $not : /acme.*corp/i } } );
Python(pymongo)を使用している場合、これは機能しません。BSON正規表現の使用方法について混乱を招くエラーが発生します。
ただし、Python正規表現オブジェクトを直接受け入れます。
db['collection'].find({'name': {'$not': re.compile("^__TEST")}})
または、mongomapperのこのようなものは、電子メールドメインが電子メールフィールドに見つからず、falseの場合に承認された場合を検索するためにも機能します。
non_org_email_users = org.users.where(
:email => { '$not' => /@#{org.official_email}/i },
approved: false).all