当前位置: 首页 > 知识库问答 >
问题:

在MySQL数据库中使用带TypeOrm的NestJS连接时出现问题

汤乐家
2023-03-14

我使用NestJS与TypeOrm连接在MySQL,但返回一个错误:'没有存储库的"用户"被发现。看起来这个实体没有注册在当前的“默认”连接中?'

没有TypeOrm,我可以运行服务器。

“用户”是我的实体。

app.module

@Module({
    imports: [
        TypeOrmModule.forRoot({
            type: 'mysql',
            host: 'localhost',
            port: 3306,
            username: 'root',
            password: '',
            database: 'myserver',
            entities: [`${__dirname}/**/*.entity{.ts,.js}`],
            synchronize: true,
            logging: true
        }),
        UserModule
    ],
    controllers: [AppController],
    providers: [AppService],
})
export class AppModule {
    constructor(
        private connection: Connection,
    ) { }
}

使用者单元

@Module({
    imports: [
        TypeOrmModule.forFeature([
            User,
        ]),
    ],
    providers: [
        UserService,
    ],
    controllers: [
        UserController,
    ]
})
export class UserModule { }

user.entity

@Entity('user')
export class User extends BaseEntity {

    @Column()
    name?: string;
    @Column({ name: 'last_name' })
    lastName?: string;

    @Column({ default: false })
    active?: boolean;
}

谁能告诉我怎么了?

谢谢你的帮助!

共有1个答案

宋高谊
2023-03-14

解决了将TypeForm配置移动到另一个文件的问题。见下文:

app.module

@Module({
    imports: [
        TypeOrmModule.forRoot(),
        UserModule
    ],
    controllers: [AppController],
    providers: [AppService],
})
export class AppModule {
    constructor(
        private connection: Connection,
    ) { }
}

ormconfig。json

{
    "type": "mysql",
    "host": "localhost",
    "port": 3306,
    "username": "root",
    "password": "",
    "database": "myserver",
    "synchronize": true,
    "logging": true,
    "autoLoadEntities": true,
    "entities": ["./src/**/*.entity{.ts,.js}", "./dist/**/*.entity.js"]
}
 类似资料:
  • 我收到一个错误: 编辑:链接到堆栈跟踪 下面是错误的最后一个“部分”,表示这是一个: ' 我的URL字符串:“jdbc:mysql://127.0.0.1:3306/schemaname?useUnicode=true 我的连接代码片段: 我已经使用了正确的模式/库名、用户名、密码和所有其他所需的“需求”。我还设置了绑定地址为,端口为。数据库是在线的,我已经确保服务正在运行。

  • 假设我们有两个服务,A和B。服务A有一个函数执行以下操作: 验证数据 现在,让我们假设以下步骤之一,步骤3或4失败。由于服务B对数据库进行了更改,这些更改仍然存在。 在这种情况下,有没有办法回滚数据库?我曾考虑过数据库事务,但在nest js中找不到任何方法来实现这一点,尽管TypeOrm支持它,但nest看起来并不自然。如果不是的话,我现在被服务B所做的更改“卡住”了,但是如果没有服务B所做的更

  • 我有一个IP地址每次我收到连接失败的消息时,我都尝试了很多连接到该服务器的方法。出于安全原因,我隐藏了用户名和密码。 代码: 我有例外 组织。postgresql。util。PSQLException:连接尝试失败。在org。postgresql。果心v3。连接工厂impl。org上的openConnectionImpl(ConnectionFactoryImpl.java:292)。postgr

  • 我有一个使用Struts1.3、Hibernate3和Spring Security开发的web应用程序。由于MySQL在此时间之后关闭了连接,该应用程序在8小时后就停止了运行。然后我从几个帖子中收集信息,使它保持很长时间,现在差不多是20-24小时。有没有人能帮我把这东西弄好。 摘要 Iam在不活动20小时后无法登录。连接被MySQL关闭。 多谢了。 C3p0日志 INFO AbstractPo

  • 我是php的初学者,对于一个项目,我想把我和数据库连接起来,但问题是: 我需要4个变量: 当我这样做时: 有两个错误: 警告:mysqli::mysqli():php_network_getaddress:getaddrinfo失败:第21行/home/ubuntu/workspace/index.php中的名称或服务未知 而且 警告:mysqli::mysqli():(HY000/2002):p

  • 我很难用pgsql设置laravel 5.3(在wamp/windows上运行)。当我尝试使用“php artisan migrate”迁移表时,出现了一个错误“PDO异常-找不到驱动程序” 我安装了postgres 9.6。 我启用了postgresql的php扩展: 所以我被卡住了,无法在laravel进行迁移工作。我的. env: 以下是laravel错误堆栈: 另外,phpinfo()中的