- Notifications
You must be signed in to change notification settings - Fork0
Custom naming strategies for TypeORM
License
NotificationsYou must be signed in to change notification settings
chantouchsek/typeorm-naming-strategy
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
This package provides a few (one, at the moment) useful custom naming strategies. It alliterates the name of columns, relations, and other fields in the database.
For example, using the snake strategy, if you have a model like this:
classUser{ @Column()createdAt}
In the DB thecreatedAt
field will becreated_at
- Snake
It's available as annpm package
npm install typeorm-naming-strategy --save
Or using yarn
yarn add typeorm-naming-strategy
import{createConnection}from'typeorm'// import { SnakeNamingStrategy } from 'typeorm-naming-strategy';importSnakeNamingStrategyfrom'typeorm-naming-strategy'createConnection({// ...namingStrategy:newSnakeNamingStrategy(),// Here you'r using the strategy!})
Alternatively you can use it in combination with aormconfig.js
// Use require instead of import// const SnakeNamingStrategy = require("typeorm-naming-strategy").SnakeNamingStrategyconstSnakeNamingStrategy=require('typeorm-naming-strategy')module.exports={// ...namingStrategy:newSnakeNamingStrategy(),}
Or you can use it in combination with aormconfig.ts
importSnakeNamingStrategyfrom'typeorm-naming-strategy'module.exports={// ...namingStrategy:newSnakeNamingStrategy(),}
Use with NestJs configuration
importtype{MysqlConnectionOptions}from'typeorm/driver/mysql/MysqlConnectionOptions'import{registerAs}from'@nestjs/config'import{SnakeNamingStrategy}from'typeorm-naming-strategy'exportdefaultregisterAs('database',():MysqlConnectionOptions=>({// ...namingStrategy:newSnakeNamingStrategy(),// ...}))
About
Custom naming strategies for TypeORM
Resources
License
Stars
Watchers
Forks
Packages0
No packages published