Как я могу получить объект createAt? - PullRequest
0 голосов
/ 03 мая 2020

Сейчас я создаю простой веб-сайт, используя node js.
Однако во время создания объект в документе не выводился. Приведенный ниже код представляет собой простую схему.

// model/Post.js

const PostSchema = new Schema({
    title: String,
    body: String,
    createdAt: {
        type: Date,
        default: Date.now
    },
    updatedAt: Date
});
// routes/posts.js

const express = require('express');
const app = express.Router();
const Post = require('../models/Post');

router.get('/', function(req, res){
    const query = Post.find({});
    query.select('-createdAt');
    query.exec(function(err, posts){
        if (err) return console.error(err);
        res.render('posts/index', { posts: posts });
    });
});

Я хочу загрузить созданный в postSchema и распечатать в html, что мне делать?
Ниже приведена часть html код.

<!-- views/posts/index.ejs -->

<% posts.forEach(post => { %>
<tr>
  <td>
    <a class="nav-link" href="/posts"><div class="ellipsis"><%= post.title %></div></a>
  </td>
  <td><%= post.createdAt %></td> <!-- I want to print createdAt -->
</tr>
<% }) %>

Я использую пакеты express, e js, пн goose

Как напечатать созданный объект?

1 Ответ

1 голос
/ 03 мая 2020

удалите query.select ('- creationAt') в вашем коде, в основном он удалит созданный в результате, и вы получите все другие атрибуты из схемы.

router.get('/', function(req, res){
    const query = Post.find({});
    query.exec(function(err, posts){
        if (err) return console.error(err);
        res.render('posts/index', { posts: posts });
    });
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...