<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                [TOC] ## 快速入門 ``` import { Entity, PrimaryGeneratedColumn, Column } from "typeorm" @Entity() export class User { @PrimaryGeneratedColumn() id: number @Column() firstName: string @Column() lastName: string @Column() isActive: boolean } ``` ## 主列 ``` @PrimaryColumn() 創建一個主列,它采用任何類型的任何值 @PrimaryGeneratedColumn() 創建一個主列,該列的值將自動生成并具有自動增量值。它將創建帶有int的列 @PrimaryGeneratedColumn("uuid") 創建一個主列,其值將自動生成uuid ``` ## 特殊列 ``` @CreateDateColumn 是自動設置為實體的插入日期的特殊列。您不需要設置此列 - 它會自動設置。 @UpdateDateColumn 是一個特殊的列,每次調用save實體管理器或存儲庫時,它都會自動設置為實體的更新時間。您不需要設置此列 - 它會自動設置。 @DeleteDateColumn 是一個特殊的列,每次調用實體管理器或存儲庫的軟刪除時,都會自動設置為實體的刪除時間。您不需要設置此列 - 它會自動設置。如果設置了@DeleteDateColumn,則默認范圍將為“未刪除”。 @VersionColumn 是一個特殊的列,每次調用實體管理器或存儲庫時,它都會自動設置為實體的版本(遞增的數字)save。您不需要設置此列 - 它會自動設置。 ``` ## 列類型 ``` @Column("int") @Column({ type: "int" }) @Column("varchar", { length: 200 }) @Column({ type: "int", width: 200 }) ``` ## simple-json列類型 以存儲任何可以通過 JSON.stringify 存儲在數據庫中的值 ``` @Entity() export class User { @PrimaryGeneratedColumn() id: number @Column("simple-json") profile: { name: string; nickname: string } } ``` ## 具有生成值的列 ``` @Entity() export class User { @PrimaryColumn() id: number @Column() @Generated("uuid") uuid: string } ``` 除了“uuid”之外,還有“increment”、“identity”(僅限 Postgres 10+)和“rowid”(僅限 CockroachDB)生成類型 ## 列選項 ``` @Column({ type: "varchar", length: 150, unique: true, // ... }) name: string; ``` ## 實體繼承 ``` export abstract class Content { @PrimaryGeneratedColumn() id: number @Column() title: string @Column() description: string } @Entity() export class Photo extends Content { @Column() size: string } @Entity() export class Question extends Content { @Column() answersCount: number } @Entity() export class Post extends Content { @Column() viewCount: number } ``` ## 鄰接表 ``` import { Entity, Column, PrimaryGeneratedColumn, ManyToOne, OneToMany, } from "typeorm" @Entity() export class Category { @PrimaryGeneratedColumn() id: number @Column() name: string @Column() description: string @ManyToOne((type) => Category, (category) => category.children) parent: Category @OneToMany((type) => Category, (category) => category.parent) children: Category[] } ``` ## 生成tree ``` import { Entity, Tree, Column, PrimaryGeneratedColumn, TreeChildren, TreeParent, TreeLevelColumn, } from "typeorm" @Entity() @Tree("nested-set") export class Category { @PrimaryGeneratedColumn() id: number @Column() name: string @TreeChildren() children: Category[] @TreeParent() parent: Category } const a1 = new Category() a1.name = "a1" await dataSource.manager.save(a1) const a11 = new Category() a11.name = "a11" a11.parent = a1 await dataSource.manager.save(a11) const a12 = new Category() a12.name = "a12" a12.parent = a1 await dataSource.manager.save(a12) const a111 = new Category() a111.name = "a111" a111.parent = a11 await dataSource.manager.save(a111) const a112 = new Category() a112.name = "a112" a112.parent = a11 await dataSource.manager.save(a112) const trees = await dataSource.manager.getTreeRepository(Category).findTrees() console.log(JSON.stringify(trees)); // [{"id":1,"name":"a1","children":[{"id":2,"name":"a11","children":[{"id":4,"name":"a111","children":[]},{"id":5,"name":"a112","children":[]}]},{"id":3,"name":"a12","children":[]}]}] ``` 常用函數 ``` .findTrees() // tree結構 .findTrees({ depth: 2 }) //輸出層級為2 .findRoots() // 獲取根節點 .findDescendants(parentCategory) //給定實體的所有后代,將它們全部返回到平面數組中 .findDescendantsTree(parentCategory) //獲取給定實體的所有孩子(后代)。將它們返回到樹中 - 彼此嵌套 .findAncestors(childCategory) //獲取給定實體的所有父母(祖先)。將它們全部返回到平面數組中。 .findAncestorsTree(childCategory) //獲取給定實體的所有父母(祖先)。將它們返回到樹中 - 彼此嵌套。 .countAncestors(childCategory) //獲取實體的祖先數量。 ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看