Резюме Я работаю над приложением, созданным с помощью backend в postgresql (написано в sequelize) и api в express. Я хочу заполнить базу данных, чтобы проверить конечные точки и запустить приложение, щелкнув по нему.
Подробности Когда я заполняю базу данных с неправильными атрибутами, она работает, но вставляет нулевые значения. Мне нужно ненулевые значения для моего приложения для работы.
Вот код заполнения
const USER = [
{id: 1, username: 'Sally', password: 'zzoda', email: 'sally@gmail.com', bio: 'here are the things i want to include', photo:'../assets/images/sally.png'},
{id: 2, username: 'noor', password: 'zzodaaaa', email: 'noor@gmail.com', bio: 'here are the things i want to include', photo:'../assets/images/sally.png'},
{id: 3, username: 'narwal', password: 'narnar', email: 'nar@gmail.com', bio: 'here are the things i want to include', photo:'../assets/images/sally.png'},
];
const seed = () => {
return db.sequelize.sync({force: true})
.then(() => {
// Create all the entries
let userPromises = USER.map(u => User.create(u));
// console.log(USER)
return userPromises;
})
}
Вот конечная точка, которую я сейчас тестирую
seed()
router.get('/', (req,res) => {
User.findAll({})
.then(users => res.json(users));
});
module.exports = router;
Я знаю, seed()
возвращает обещание, и оно не выполняется, но оно работает, когда
const USER = [
{id: 1, name: 'Action'},
{id: 2, name: 'Comedy'},
{id: 3, name: 'Drama'},
];
Так что я решил, что это не проблема.
Что выводит код Я ожидал объект со значениями, которые я посеял в этой конечной точке, но вместо этого я получил это: []
Дополнительная информация:
Я также распечатал ПОЛЬЗОВАТЕЛИ после карты, и она напечатала правильные значения, которые я хотел вернуть с обещанием.
Когда я развернул обещание и распечатал его, он вернул еще одно обещание .... Вот как я его печатал: seed().then((elem) => console.log(elem))