Я устанавливаю бот-диск, который сохраняет информацию о сервере / пользователе в базе данных MongoDB. Я использую идентификатор сервера Discord для имени коллекции в моделях базы данных. Когда я пытаюсь сохранить данные в коллекцию, используя то же имя коллекции (с тем же идентификатором сервера), я получаю сообщение об ошибке, в котором говорится, что модель не может быть переопределена после компиляции. Как я могу это исправить и по-прежнему использовать идентификатор сервера в качестве имени коллекции?
Я попытался передвигаться по коду, чтобы заставить его не делать эту ошибку. Я хочу использовать его в другом файле, но не знаю, как отправить идентификатор сервера в файл для имени коллекции.
async function addUserFile(usr) {
const userSchema = mongoose.Schema({
userID: String,
warnings: Array,
moderations: Array,
currency: String,
})
let userFile = mongoose.model(usr.guild.id, userSchema)
let file = new userFile({
_id: mongoose.Types.ObjectId(),
userID: usr.id,
warnings: {},
modersations: {},
currency: 0
})
file.save()
}
Я хочу получить документы для добавления в коллекцию, используя идентификатор сервера, с которого они приходят без ошибки, но вместо этого я получаю ошибку UnhandledPromiseRejectionWarning: OverwriteModelError: Cannot overwrite model once compiled.
.