在此错误之前,我只让一个用户聊天,它起作用了。 现在,即使我尝试只输入一个用户,仍然会出现错误...
即使备份也会给我同样的错误 实体:
import {Column, Entity, JoinTable, ManyToMany, ManyToOne, OneToMany, OneToOne, PrimaryGeneratedColumn} from "typeorm";
import {User} from "./user.entity";
import {Order} from "./order.entity";
@Entity()
export class Chat {
@PrimaryGeneratedColumn()
id: number;
@ManyToMany(() => User)
@JoinTable()
users: User[];
@OneToOne(() => Order, (order) => order.chat, {nullable: true})
order: Order
}
服务:
async createChat(userId, employeeId, orderId) {
try {
const candidateUser = await this.user.findOne({
where: {
id: userId,
},
});
const candidateEmployee = await this.user.findOne({
where: {
id: employeeId,
},
});
const candidateOrder = await this.order.findOne({
where: {
id: orderId,
},
});
if (candidateOrder && candidateUser && candidateEmployee) {
const newChat = new Chat();
newChat.users = [candidateEmployee];
newChat.order = candidateOrder;
const savedChat = await this.chat.save(newChat);
candidateUser.currentChat = savedChat.id;
candidateEmployee.currentChat = savedChat.id;
await this.user.save(candidateUser);
await this.user.save(candidateEmployee);
candidateOrder.status = 'pending';
await this.order.save(candidateOrder);
return savedChat;
} else {
throw new Error('Не удалось создать чат.');
}
} catch (e) {
throw new Error(e);
}
}
错误: [Nest] 25302 - 07.10.2023, 17:27:24 错误 [ExceptionsHandler] UpdateValuesMissingError:无法执行更新查询,因为未定义更新值。调用“qb.set(...)”方法来指定更新值。 错误:UpdateValuesMissingError:无法执行更新查询,因为未定义更新值。调用“qb.set(...)”方法来指定更新值。 在 ChatService.createChat (/mnt/hdd/web 项目/telegram-monolith/telegram-server/src/chat/chat.service.ts:64:19) 在 processTicksAndRejections (节点:内部/进程/task_queues:95:5) 在/mnt/hdd/web项目/telegram-monolith/telegram-server/node_modules/@nestjs/core/router/router-execution-context.js:46:28 在/mnt/hdd/web项目/telegram-monolith/telegram-server/node_modules/@nestjs/core/router/router-proxy.js:9:17
您应该在
@JoinColumn
中添加
order
@Entity()
export class Chat {
@PrimaryGeneratedColumn()
id: number;
@ManyToMany(() => User)
@JoinTable()
users: User[];
@OneToOne(() => Order, (order) => order.chat, {nullable: true})
@JoinColumn()
order: Order
}