eggjs / eggjs/egg

ts 使用sequelize 进行多表联查时,sql语句无数据表名,导致不同表有相同字段报错

Open
#4,885 5 comments 0 reactions 0 assignees View on GitHub
Inactive
Dominant language
TypeScript
Stars
19k
Forks
1.8k
PR merge metrics
No merged PRs in 30d

Description

## What happens?
我在拉取[examples](https://github.com/eggjs/examples) demo 代码后,开启sequelize-ts demo代码服务后,请求 /posts/1 接口后发生错误,而开启sequelize代码服务则是正常的

sql:
SELECT ``.`id`, ``.`title`, ``.`content`, ``.`user_id`, ``.`created_at`, ``.`updated_at`, ``.`created_at` AS `createdAt`, ``.`updated_at` AS `updatedAt`, ``.`user_id` AS `userId`, `user`.`id` AS `user.id`, `user`.`name` AS `user.name`, `user`.`age` AS `user.age` FROM `posts` AS `` LEFT OUTER JOIN `users` AS `user` ON ``.`user_id` = `user`.`id` WHERE ``.`id` = 1;

error:
2022-02-16 00:08:44,216 ERROR 49246 [-/127.0.0.1/-/43ms GET /posts/1] nodejs.SequelizeDatabaseError: Column 'id' in field list is ambiguous

## Mini Showcase Repository(REQUIRED)
examples演示代码 https://github.com/eggjs/examples/tree/master/sequelize-ts

## How To Reproduce
正常拉取examples演示代码中的sequelize-ts demo,开启服务并访问post单个文章接口即可

## Context
- **Node Version**: 16.13.2
- **Egg Version**: 2.33.1
- **Plugin Name**: egg-sequelize
- **Plugin Version**: 6.0.0
- **typescript Version**: 3.9.10
- **Platform**: mac

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.