balderdashy / sails

Realtime MVC Framework for Node.js
https://sailsjs.com
MIT License
22.84k stars 1.95k forks source link

Case insensitive where queries setting for sails-mogno? #7014

Open LouAdrien opened 4 years ago

LouAdrien commented 4 years ago

Sails doc (https://sailsjs.com/documentation/concepts/models-and-orm/query-language#query-options) specify this is an adapter related setting. I have tried to search for this option in the doc but could not find it, is it available?

I see this PR https://github.com/balderdashy/sails-mongo/pull/464 and this one : https://github.com/balderdashy/sails-mongo/pull/469

Seem to be related but are not merged

sailsbot commented 4 years ago

@LouAdrien Thanks for posting! We'll take a look as soon as possible.

In the mean time, there are a few ways you can help speed things along:

Please remember: never post in a public forum if you believe you've found a genuine security vulnerability. Instead, disclose it responsibly.

For help with questions about Sails, click here.

rachaelshaw commented 4 years ago

@LouAdrien as of sails-mongo@1.2.0, you can chain on .meta({makeLikeModifierCaseInsensitive: true}) for a case-insensitive query. Hope that helps!

LouAdrien commented 4 years ago

This looks like what I am looking for, will test it tomorrow, thanks a lot! This (along with other potential sails-mongo only features) would deserved to have a section in the sails-mongo readme

mikermcneil commented 4 years ago

This (along with other potential sails-mongo only features) would deserved to have a section in the sails-mongo readme

@LouAdrien :+1: Makes sense

Would be great to add it here in the mongo section of the adapter reference docs: https://sailsjs.com/documentation/concepts/extending-sails/adapters/available-adapters#?sailsmongo

Also wouldn't hurt to add a footnote about it here: https://sailsjs.com/documentation/tutorials/using-mongo-db

P.S. If you're a contributor who has a PR out for any of these, please be sure to drop a comment here so we see it promptly. Thank you!

29satnam commented 4 years ago

@LouAdrien as of sails-mongo@1.2.0, you can chain on .meta({makeLikeModifierCaseInsensitive: true}) for a case-insensitive query. Hope that helps!

Wow! 😍 You guys are awesome.

luislobo commented 3 years ago

I found it documented here: https://sailsjs.com/documentation/tutorials/using-mongo-db https://sailsjs.com/documentation/reference/waterline-orm/queries/meta

RaveloMevaSoavina commented 1 year ago

Could someone please help me? It doesn't work the case insensitive query ?

node: v15.0.0 sails: 1.4.0 sails-mongo: 2.0.0

module.exports = {
    friendlyName: "Returns list of library section",
    description: "Returns list of library section",
    inputs: {
        search_criteria: {
            type: "ref",
            required: true
        },
        sort: {
            type: "ref",
            required: false
        },
        limit: {
            type: "number",
            required: false
        },
        skip: {
            type: "ref",
            required: false
        },
        populate: {
            type: "ref",
            required: false
        }
    },

    fn: async function(inputs, exits) {
        var promise = LibrarySection.find(inputs.search_criteria).meta({ makeLikeModifierCaseInsensitive: true }),
            librarySectionList = [];

        if (inputs.sort) {
            promise.sort(inputs.sort);
        }

        if (inputs.limit) {
            promise.limit(inputs.limit);
        }

        if (inputs.skip) {
            promise.skip(inputs.skip);
        }

        if (inputs.populate) {
            if (inputs.populate.parent) {
                promise.populate("parent");
            }
        }

        librarySectionList = await promise.then();

        return exits.success(librarySectionList);
    }
};
eashaw commented 1 year ago

@RaveloMevaSoavina Can you show an example request you're sending to this action?