Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up

Laravel Eloquent With Typescript

License

NotificationsYou must be signed in to change notification settings

gradii/fedaco

Repository files navigation

Build Status

How To Use It

  • setup a connection
    constdb=newDatabaseConfig();db.addConnection({'driver'  :'sqlite','database':':memory:'});db.bootFedaco();db.setAsGlobal();
  • define a model
    @Table({tableName:'user'})classUserextendsModel{  @PrimaryColumnid;    @Column()email;  @Column()name;  @Column()age;  @CreatedAtColumn()created_at;  @UpdateAtColumn()updated_at;}
  • fetch data
    constlist=awaitUser.createQuery().get();

Create Table

create a user table.

constschemaBuilder=Model.getConnectionResolver().connection(connectionName).getSchemaBuilder();;awaitschemaBuilder().create('users',table=>{table.increments('id');table.string('email').withUnique();table.string('name');table.string('age');});

Features

  • wrapped driver. unify all driver query api
  • compile query builder to sql
  • decorate to define model
  • soft delete
  • use relationship to link model
  • relation can set dynamic constrain
  • sqlite and mysql support

Notice

ecma class with field declaration not in constructor is not support. es2016 is support but es2022 is not.field declaration can usedeclare keyword to declare field in constructor, then the field will not generated in class when enabled es2022like this

  @Table({tableName:'user'})classUserextendsModel{    @PrimaryColumn()declareid;}

[8]ページ先頭

©2009-2025 Movatter.jp