@tsdi/typeorm-adapter
v6.0.48
Published
@tsdi/typeorm-adapter is typeorm adapter orm for boot application, mvc frameworks on server.
Downloads
33
Maintainers
Readme
packaged @tsdi/typeorm-adapter
This repo is for distribution on npm
. The source for this module is in the
main repo.
@tsdi/typeorm-adapter
is model parser for boot frameworker. base on ioc @tsdi
. help you develop your project easily.
Install
You can install this package either with npm
npm
npm install @tsdi/typeorm-adapter
Documentation
add orm for application
import { BootApplication, DIModule } from '@tsdi/boot';
import { TypeOrmModule } from '@tsdi/typeorm-adapter';
export class MyService extends Service {
@Inject()
dbhelper: TypeOrmHelper;
async configureService(ctx: IBootContext): Promise<void> {
const resp = this.dbhelper.getRepository(Production);
// todo configuer service.
}
// ......
}
@EntityRepository(Production)
export class ProductionRepository extends Repository<Production> {
async findById(id: string) {
return await this.findOne(id);
}
async removeById(id: string) {
const pdtline = await this.findOne(id);
return await this.remove(pdtline);
}
async serarch(...args) {
// do sth..
}
...
}
@Injectable()
export class SerachProduction {
@Inject() //or @AutoWired()
resp: ProductionRepository;
dosth(){
this.resp.search(...)
}
}
@DIModule({
// baseURL: __dirname,
imports: [
TypeOrmModule
//... you service, or controller, some extends module.
],
providers:[
SerachProduction
],
bootstrap: MyService
debug: true
})
export class MyApp {
constructor() {
console.log('boot my application');
}
}
BootApplication.run(MyApp);
add orm for mvc application
import { MvcApplication, DefaultMvcMiddlewares, MvcModule, MvcServer } from '@mvx/mvc';
import { TypeOrmModule } from '@tsdi/typeorm-adapter';
@Cors
@Authorization()
@Controller('/api/production')
export class ProductionController {
@Inject()
rep: ProductionRepository;
@Post('/')
@Put('/')
async save(pdt: Production) {
const r = await this.rep.save(pdt);
return ResponseResult.success(r);
}
@Delete('/:id')
async removeById(id: string) {
const r = await this.rep.removeById(id);
return ResponseResult.success(r);
}
@Get('/:id')
async get(id: string) {
const pdtline = await this.rep.findById(id);
return ResponseResult.success(pdtline);
}
@Get('/')
async query(keywords?: string, skip?: number, take?: number) {
const r = await this.rep.search(keywords, skip, take);
return ResponseResult.success(r[0], r[1]);
}
}
// 1. use MvcHostBuilder to boot application.
MvcApplication.run();
// 2. use bootstrap module to boot application
@MvcModule({
// baseURL: __dirname,
imports: [
TypeOrmModule
//... you service, or controller, some extends module.
],
debug: true
})
class MvcApi {
constructor() {
console.log('boot application');
}
}
// 3. use MvcHostBuilder to boot application module.
@MvcModule({
imports: [
TypeOrmModule
// ... /... you service, or controller, some extends module.
// DebugLogAspect
]
// bootstrap: MvcServer
})
class MvcApi {
}
MvcApplication.run(MvcApi);
//4. use bootstrap module to boot application by main.
@MvcModule({
imports: [
TypeOrmModule
// ...
],
// bootstrap: MvcServer,
debug: true
})
class MvcApi {
constructor() {
console.log('boot application');
}
static main() {
console.log('run mvc api...');
MvcApplication.run(MvcApi);
}
}
Documentation
Documentation is available on the
- @tsdi/ioc document.
- @tsdi/aop document.
- @tsdi/core document.
- @tsdi/boot document.
- @tsdi/components document.
- @tsdi/compiler document.
- @tsdi/activities document.
- @tsdi/pack document.
- @tsdi/typeorm-adapter document.
- @tsdi/unit document.
- @tsdi/unit-console document.
- @tsdi/cli document.
packages
@tsdi/cli @tsdi/ioc @tsdi/aop @tsdi/core @tsdi/boot @tsdi/components @tsdi/compiler @tsdi/activities @tsdi/pack @tsdi/typeorm-adapter @tsdi/unit @tsdi/unit-console
License
MIT © Houjun