Я заполнил веб-приложение, и оно нормально работает на моем локальном хосте. При развертывании в Heroku все создается правильно, КРОМЕ для связи один ко многим, которую я создал в своей базе данных. Когда я получаю доступ к своему API на локальном хосте, вот как отображается элемент (именно это я и хочу сделать)
items: [
{
id: 7,
name: "A bag of chips",
image: "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcT5rKTzjPCyEAY8r2bj2KfOj619bmSmyApH5B9Vd716iX-To1Zg",
price: 0,
completedBid: false,
upForAuction: false,
created_at: "2019-01-04T19:46:58.301Z",
updated_at: "2019-01-07T05:50:26.561Z",
user_id: 7,
user: {
id: 7,
username: "User 6",
balance: 200,
created_at: "2019-01-04T19:46:58.239Z",
updated_at: "2019-01-07T05:50:26.569Z"
}
},
А вот как это проявляется в моем API heroku (без ассоциации):
items: [
{
id: 7,
name: "A bag of chips",
image: "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcT5rKTzjPCyEAY8r2bj2KfOj619bmSmyApH5B9Vd716iX-To1Zg",
price: 0,
completedBid: false,
upForAuction: false,
createdAt: "2019-01-07T18:28:02.954Z",
updatedAt: "2019-01-07T18:28:02.954Z",
userId: null,
user: null
},
Я нашел здесь несколько проблем с похожими проблемами и попытался сбросить базу данных heroku безрезультатно. Я также заметил, что userId не подчеркнут, как на моей локальной машине. Единственные различия в этих двух проектах заключаются в том, как я настроил свою базу данных в моем файле models / index.js, поэтому я включил различия между двумя файлами ниже. Буду признателен за любую помощь в организации ассоциаций на Heroku! Чтобы проверить больше кода, смотрите репозиторий для моего проекта.
https://github.com/7evam/liveauction/tree/deployment-test
из моделей / index.js
// this line only used on heroku deployment
// require('dotenv').config();
const Sequelize = require('sequelize');
// this is how i set up my db on my local machine
const db = new Sequelize({
database: 'live_auction',
dialect: 'postgres',
define: {
underscored: true,
returning: true,
},
});
// and this is how i set it up for heroku
const db = new Sequelize(
process.env.DATABASE_URL,
{
underscored: true,
returning: true,
},
);