Попытка создать диск-бот, используя discord.js.Я использую sequelize и sqlite для создания базы данных для хранения данных.Кажется, что пользовательская функция не работает, терминал думает, что это не функция, когда она определена.Это может быть действительно очевидное решение, но я очень любитель, и я часто получаю ошибки, но обычно их исправляю.Этот, который я даже не могу определить корень проблемы
Эта проблема также относится к другим пользовательским функциям
Самым запутанным является то, что для другой папки для другого бота полностью, с оченьпохожий код и по сути те же пользовательские функции, это работает!Но по какой-то причине он здесь не работает.
// Defining these
const { Users, ItemDB } = require('./dbObjects');
// The command that uses the function. It is worth noting that it finds the item and user successfully, proving that the problem is in users.addItem
const item = await ItemDB.findByPk(1);
const usert = Users.findByPk(message.author.id);
usert.addItem(item);
// The addItem function defined, in dbObjects file
Users.prototype.addItem = async function(item) {
const useritem = await UserItems.findOne({
where: { user_id: this.user_id, item_id: item.id },
});
if (useritem) {
useritem.amount += 1;
return useritem.save();
}
return UserItems.create({ user_id: this.user_id, item_id: item.id, amount: 1 });
};
Ожидаемый результат успешно добавляется в базу данных, но вместо этого терминал возвращает:
(node:21400) UnhandledPromiseRejectionWarning: TypeError: usert.addItem is not a function
Добавление await
до Users.findByPk
возвращается случайным образом.