Руль и циклы JSON объектов - PullRequest
2 голосов
/ 10 января 2020

Не возражаете, если я попрошу несколько советов о том, как l oop через следующие JSON объекты, пожалуйста, и поместите его в шаблон Handlebars?

Я нашел много подобных вопросов здесь для «Руль и циклический просмотр JSON», но после нескольких часов чтения и проб различных перестановок я довольно застрял.

Объект resorts нормально появляется на странице шаблона, если я напечатаю {{ resorts}}.

И я могу получить маркированный список, который, кажется, соответствует количеству документов на курортах.

Но моя цель - получить маркированный список каждого свойства Name, и Я не смог этого сделать.

Заранее большое спасибо за любую помощь.

Мой JSON:

{ properties: { 
      Country: 'United States', 
      Name: 'Killington', 
      description: `blurb` 
  }, 
  geometry: { 
      coordinates: [ -72.8032981, 43.6176027 ], 
      type: 'Point' 
    }, 
  datePosted: 2020-01-10T12:07:00.340Z, 
  _id: 5e11cd71746ed55b54a760ec, 
  type: 'Feature' 
},
{ properties: { 
      Country: 'United States', 
      Name: 'Jay', 
      description: `blurb` 
  }, 
  geometry: { 
      coordinates: [ -72.8032981, 43.6176027 ], 
      type: 'Point' 
    }, 
  datePosted: 2020-01-10T12:07:00.340Z, 
  _id: 5e11cd71746ed55b54a760ec, 
  type: 'Feature' 
}

Моя модель MongoDB (курорт. js)

const mongoose = require('mongoose')
const Schema = mongoose.Schema;

const ResortSchema = new Schema ({
  type: String,
  properties:{
    Country: String,
    Name: String,
    description: String
  },
  geometry: {
    type: {
      type: String, 
      enum: ['Point'],
      required: true
    },
    coordinates: {
      type: [Number],
      required: true
    }
  },
  datePosted: {
    type: Date,
    default: new Date()
  },
  image: String
})


const Resort = mongoose.model('Resort', ResortSchema);

module.exports = Resort

Мой JS

exports.home = async(req, res) => {
  const Resort = require('../models/resort')
  const resorts = await Resort.find({})
  res.render('home', {resorts: resorts})
}

Шаблон моего руля :

{{#if resorts}}
<ul>
  {{#each resorts}}
  <li>
    {{properties.Name}}
  </li>
  {{/each}}
</ul>
{{/if}}

Редактировать: Я получаю JSON вывод, если я делаю следующее, но все равно не могу добиться успеха, если я пытаюсь сверлить Доу n к свойствам. Имя:

<ul>
  {{#resorts}}
      <li>
        {{this}}
      </li>
  {{/resorts}}
</ul>

Выход

{ properties: { Country: 'USA', Name: 'Killington', description: "blurb" }, geometry: { coordinates: [ -72.8032981, 43.6176027 ], type: 'Point' }, datePosted: 2020-01-10T12:07:00.340Z, _id: 5e11cd71746ed55b54a760ec, type: 'Feature' }

ОБНОВЛЕНИЕ

В данный момент пытаюсь создать JSON проверка в MongoDB. Может быть как-то с этим связано.

...