проблема?
При сохранении в монгодб сущности с помощью TypeORM, выпадает ошибка рантайма
"Cannot read properties of undefined (reading 'propertyName')
Сущность при этом создается через репу Repository<User> методом create
Вот метод
async createUser(userDto: UserDto): Promise<User> {
const user = this.ormRepository.create(userDto);
Logger.debug('Prerere to create User ' + JSON.stringify(user));
return await this.ormRepository.save(user);
}
create срабатывает
save - не срабатывает
а чем отличается typeorm от mongosse?
typeorm для реляционых , монгус для монги (документно ориентирована)
да там именно в монгодб сохраняет typeorm. вот я и спросил, в чем разница
Народ, хелп плиз) Описывал этот кейс, до сих пор не понял, в чем проблема, может кто сталкивался? При сохрании в монгодб посредством TypeORM выпадает ошибка ERROR [TypeError: Cannot read properties of undefined (reading 'propertyName') at src/entity-manager/MongoEntityManager.ts:191:67 at Array.map (<anonymous>) at MongoEntityManager.findByIds (/entity-manager/MongoEntityManager.ts:181:22) at MongoRepository.findByIds (/src/repository/MongoRepository.ts:137:29) at /src/persistence/SubjectDatabaseEntityLoader.ts:116:48 at Array.map (<anonymous>) at SubjectDatabaseEntityLoader.load (/src/persistence/SubjectDatabaseEntityLoader.ts:38:54) at /src/persistence/EntityPersistExecutor.ts:119:23 at Array.map (<anonymous>) at EntityPersistExecutor.execute (/src/persistence/EntityPersistExecutor.ts:73:34)] Очень бесит что в ошибке нет никаких объяснений, что происходит?
может не все нужные поля в dto есть?
Да, все поля есть И logging: true стоит Если какого-то поля не хватает, почему не сообщить об этом по-нормальному?) TypeORM это точно ок?)
так у тебя в ошибке же вроде написано, что не так не может прочитать поле propertyName, потому что в нем нет значения есть у тебя такое поле "propertyName " в сущности ?
возможно с ID проблема
https://github.com/typeorm/typeorm/issues/623 https://stackoverflow.com/questions/51704067/use-objectid-from-mongodb-with-mysql
Спасибо! Я полагал, что поле _id с типом ObjectIdColumn будет создано автоматически, а id я использую для других целей, там id пользователя во внешней системе. Это неверный подход?
Для монги есть специальная ОРМ
Ну я может на постгрю перейду когда проект из вмп выйдет, было бы круто один ОРМ, чтобы минимум переделок
не будет минимум переделок
возьми сразу постгрес
видимо, да)
Обсуждают сегодня