Advertisement
Guest User

Untitled

a guest
May 23rd, 2019
88
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.70 KB | None | 0 0
  1. //base domain
  2. @domain()
  3. export class Animal {
  4. constructor(public name:string, public age:number){}
  5. }
  6.  
  7. //cat domain
  8. @domain()
  9. export class Cat extends Animal {
  10. constructor(public name:string, public age:number, public microChip:string){
  11. super(name, age)
  12. }
  13. }
  14.  
  15. //base controller
  16. export class AnimalsBase {
  17. constructor(private tableName:string){}
  18.  
  19. @route.get(":id")
  20. get(id:number){
  21. return db(this.tableName).where({id}).first()
  22. }
  23.  
  24. @route.post("")
  25. add(animal:Animal){
  26. return db(this.tableName).insert(animal)
  27. }
  28. }
  29.  
  30. //cat controller
  31. export class CatsController extends AnimalsBase {
  32. constructor(){
  33. super("Cats")
  34. }
  35.  
  36. @route.post("")
  37. add(cat:Cat) {
  38. return super.add(cat)
  39. }
  40. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement