내 노드 응용 프로그램은 로컬에서 정상적으로 작동하지만 Heroku에 배포 할 때 오류가 발생했습니다. 앱은 /models
폴더에 Sequelize를 사용합니다.이 폴더에는 index.js
, Company.js
및 Users.js
이 포함되어 있습니다. 로컬, 나는 /models/index.js
에 다음 코드를 사용하여 모델을 가져올 수 있어요 : 처음Heroku + Node : 모듈 오류를 찾을 수 없습니다.
Error: Cannot find module '/app/models/Company'
at Function.Module._resolveFilename (module.js:338:15)
at Function.Module._load (module.js:280:25)
at Module.require (module.js:364:17)
at require (module.js:380:17)
at module.exports.Sequelize.import (/app/node_modules/sequelize/lib/sequelize.js:219:24)
at module.exports.sequelize (/app/models/index.js:60:43)
at Array.forEach (native)
at Object.<anonymous> (/app/models/index.js:59:8)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
Process exited with status 8
: 나는 다음과 같은 오류와 Heroku가 앱 충돌을 배포 할 때
// load models
var models = [
'Company',
'User'
];
models.forEach(function(model) {
module.exports[model] = sequelize.import(__dirname + '/' + model);
});
이것은, 그러나, 잘 작동 나는 대소 문자를 구분 (로컬 Mac 대 heroku 리눅스)로 인한 줄 알았지 만 파일을 이동하고 자식 커밋을 만든 다음 다시 이동하고 Company.js
이 git 저장소에 대문자로되어 있는지 다시 확인했습니다. 이것은 문제를 해결하지 못했고 그 문제가 무엇인지 모릅니다.
기쁜 마음으로 도움을주었습니다. – dankohn
지독한 형사. – WildService
나는이 같은 문제가 있었고 가장 오랜 시간 동안 그것을 알아 내려고 노력했다. @ 단코보다 감사합니다! –