Artist.findOne не является функцией - PullRequest
0 голосов
/ 27 декабря 2018

Я получаю ошибку в приложении Electron, когда запускаю этот код внутри моего FindArtist.js файла:

const Artist = require('../models/artist');

/**
 * Finds a single artist in the artist collection.
 * @param {string} _id - The ID of the record to find.
 * @return {promise} A promise that resolves with the Artist that matches the id
 */
module.exports = _id => {
  return Artist.findOne({ _id: _id });
};

Я определенно установил mongoose, но, похоже, я больше не импортирую mongoose или Artistмодель соответственно?Не уверен.

Вот файл models/artist.js:

const mongoose = require('mongoose');
const AlbumSchema = require('./album');
const Schema = mongoose.Schema;

const ArtistSchema = new Schema({
  name: String,
  age: Number,
  yearsActive: Number,
  image: String,
  genre: String,
  website: String,
  netWorth: Number,
  labelName: String,
  retired: Boolean,
  albums: [AlbumSchema]
});

const Artist = mongoose.model('artist', ArtistSchema);

module.exports = ArtistSchema;

1 Ответ

0 голосов
/ 27 декабря 2018

Я понял, что мои module.exports в моем models/artist.js файле были неправильными.

Вместо:

// const Artist = mongoose.model('artist', ArtistSchema);

// module.exports = ArtistSchema;

это должно быть так:

module.exports = mongoose.model('artist', ArtistSchema);
...