Как ограничить количество отображаемых объектов? - PullRequest
0 голосов
/ 18 июня 2019

Как ограничить отображение результатов через Mongoose?Я хотел бы отобразить только первые 5 объектов из моего массива результатов, содержащихся в схеме Carauction:

router.get('/app/:cars_getroute', ensureAuthenticated, (req, res, next) => {
Promise.all([Car.findOne({ cars_getroute: req.params.cars_getroute }), Carauction.findOne({ cars_getroute: req.params.cars_getroute }), Carauctionstats.findOne({cars_getroute: req.params.cars_getroute})])
    .then(result => {
        const [cars, carauctions, carauctionstats] = result;

        if (User.isCharged = true) {
            res.render('app/fichecar', {
                results: carauctions.results,
        })...

Моя схема:

const CarauctionSchema = new Schema({
    objectID: {
        type: Number
    },
    cars_getroute: {
        type: String
    },
    gm_url: {
        type: String
    },
    "results": {
        type: [{
            marque: {
                type: String
            },
            model: {
                type: String
            }...}]
    }

Я бы хотел ограничить10 результатов объекта.Я пытался с Carauction.find (carauctions.results) .limit (10), но он не работает.

Затем я рендерил элементы результатов с помощью рулей:

{{#each results as |auction|}}

                    <a target="_blank" rel="noopener noreferrer" href="{{auction.auction_url}}" class="results__box--hover">
                        <div class="results__container--box">
                            <div class="results__container--img">
                                <img src="{{auction.image_urls}}">
                            </div>
                            <div class="results__container--left">
                                <div class="results__container--model">
                                    <span>{{auction.model_year}} {{auction.marque}} {{auction.model}}</span>
                                </div>
                                <div class="results__container--auction">
                                    <span class="results__auction_house">{{auction.auction_house}}</span>
                                    <span>{{auction.auction_country}}</span>
                                    <span class="results__auction_date">{{auction.auction_date}}</span>


            {{/each}}

1 Ответ

0 голосов
/ 18 июня 2019

Вы можете ограничить результаты, используя carauctions.results.slice(0,10).Это приведет к выводу до 10 элементов, но не вызовет проблем, если их меньше.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...