You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
lib/src/orm/template/model.ts

29 lines
696 B

import {Template} from '../../cli'
/**
* Template for creating new database model classes in app/models.
*/
const templateModel: Template = {
name: 'model',
fileSuffix: '.model.ts',
baseAppPath: ['models'],
description: 'Create a new class that represents a record in a database',
render: (name: string) => {
return `import {Injectable, Model} from '@extollo/lib'
/**
* ${name} Model
* -----------------------------------
* Put some description here.
*/
@Injectable()
export class ${name} extends Model<${name}> {
protected static table = '${name.toLowerCase()}'
protected static key = '${name.toLowerCase()}_id'
}
`
},
}
export { templateModel }