Привет всем,
Я создал API с Nodejs
, используя Koajs
и Typeorm
.
У меня небольшая проблема, когда я звоню одномуиз моих конечных точек API.Конечная точка должна создавать новый контент.Вместо этого он выдает ошибку при попытке сохранить.
Ошибка:
{
"success": false,
"error": {
"message": "ER_WRONG_VALUE_COUNT_ON_ROW: Column count doesn't match value count at row 1",
"code": "ER_WRONG_VALUE_COUNT_ON_ROW",
"errno": 1136,
"sqlMessage": "Column count doesn't match value count at row 1",
"sqlState": "21S01",
"index": 0,
"sql": "INSERT INTO `content`(`id`, `title`, `content`) VALUES ('9c29e73c-9bd0-4cf3-bea4-ad38f5082790', `title` = 'Test', `content` = 'Contenthaha', DEFAULT)",
"name": "QueryFailedError",
"query": "INSERT INTO `content`(`id`, `title`, `content`) VALUES (?, ?, DEFAULT)",
"parameters": [
"9c29e73c-9bd0-4cf3-bea4-ad38f5082790",
{
"title": "Test",
"content": "Contenthaha"
}
]
}
}
Конечная точка:
@Post('/content')
async postOne(@Body() title: string, content: string) {
const { repository } = this;
try {
const newContent = repository.create({
title,
content
});
await repository.save(newContent);
} catch (exception) {
return { 'success': false, 'error': exception };
}
return { 'success': true, 'message': 'Content was successfully created' };
}
Когда я возвращаю newContent
в контроллер прямо перед тем, как он выдает ошибку, я получаю этот странный JSON, возвращенный в Postman
:
{
"title": {
"title": "Test",
"content": "Contenthaha"
}
}
Моя модель:
import {
Entity,
PrimaryGeneratedColumn,
Column,
} from 'typeorm';
@Entity()
export class Content {
@PrimaryGeneratedColumn('uuid')
id!: number;
@Column()
title!: string;
@Column({ type: 'longtext' })
content!: string;
}
Я надеюсь, что кто-то может помочь, так как у меня тут мозги.
Заранее спасибо!