data-source.ts 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. import "reflect-metadata"
  2. import { DataSource } from "typeorm"
  3. import process from 'node:process'
  4. // 实体类导入
  5. import { UserEntity as User } from "./modules/users/user.entity"
  6. import { Role } from "./modules/users/role.entity"
  7. import { File } from "./modules/files/file.entity"
  8. import { Company } from "./modules/silver-jobs/company.entity"
  9. import { Job } from "./modules/silver-jobs/job.entity"
  10. import { Application } from "./modules/silver-jobs/application.entity"
  11. import { Favorite } from "./modules/silver-jobs/favorite.entity"
  12. import { ViewRecord } from "./modules/silver-jobs/view-record.entity"
  13. import { CompanyImage } from "./modules/silver-jobs/company-image.entity"
  14. import { SilverUserProfile } from "./modules/silver-users/silver-user-profile.entity"
  15. import { SilverPoint } from "./modules/silver-users/silver-point.entity"
  16. import { SilverPointTransaction } from "./modules/silver-users/silver-point-transaction.entity"
  17. import { SilverTimeBank } from "./modules/silver-users/silver-time-bank.entity"
  18. import { SilverKnowledge } from "./modules/silver-users/silver-knowledge.entity"
  19. import { SilverKnowledgeCategory } from "./modules/silver-users/silver-knowledge-category.entity"
  20. import { SilverKnowledgeTag } from "./modules/silver-users/silver-knowledge-tag.entity"
  21. import { SilverKnowledgeTagRelation } from "./modules/silver-users/silver-knowledge-tag-relation.entity"
  22. import { SilverKnowledgeStats } from "./modules/silver-users/silver-knowledge-stats.entity"
  23. import { SilverKnowledgeInteraction } from "./modules/silver-users/silver-knowledge-interaction.entity"
  24. export const AppDataSource = new DataSource({
  25. type: "mysql",
  26. host: process.env.DB_HOST || "localhost",
  27. port: parseInt(process.env.DB_PORT || "3306"),
  28. username: process.env.DB_USERNAME || "root",
  29. password: process.env.DB_PASSWORD || "",
  30. database: process.env.DB_DATABASE || "d8dai",
  31. entities: [
  32. User, Role, File, Company, Job, Application, Favorite, ViewRecord, CompanyImage,
  33. SilverUserProfile, SilverPoint, SilverPointTransaction, SilverTimeBank,
  34. SilverKnowledge, SilverKnowledgeCategory, SilverKnowledgeTag,
  35. SilverKnowledgeTagRelation, SilverKnowledgeStats, SilverKnowledgeInteraction,
  36. ],
  37. migrations: [],
  38. synchronize: process.env.DB_SYNCHRONIZE !== "false",
  39. logging: process.env.DB_LOGGING === "true",
  40. });