Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ( // WithGlobalUniqueID sets the universal ids options to the migration. // If this option is enabled, ent migration will allocate a 1<<32 range // for the ids of each entity (table). // Note that this option cannot be applied on tables that already exist. WithGlobalUniqueID = schema.WithGlobalUniqueID // WithDropColumn sets the drop column option to the migration. // If this option is enabled, ent migration will drop old columns // that were used for both fields and edges. This defaults to false. WithDropColumn = schema.WithDropColumn // WithDropIndex sets the drop index option to the migration. // If this option is enabled, ent migration will drop old indexes // that were defined in the schema. This defaults to false. // Note that unique constraints are defined using `UNIQUE INDEX`, // and therefore, it's recommended to enable this option to get more // flexibility in the schema changes. WithDropIndex = schema.WithDropIndex // WithForeignKeys enables creating foreign-key in schema DDL. This defaults to true. WithForeignKeys = schema.WithForeignKeys )
View Source
var ( // SysApisColumns holds the columns for the "sys_apis" table. SysApisColumns = []*schema.Column{ {Name: "id", Type: field.TypeUint64, Increment: true}, {Name: "created_at", Type: field.TypeTime}, {Name: "updated_at", Type: field.TypeTime}, {Name: "path", Type: field.TypeString}, {Name: "description", Type: field.TypeString}, {Name: "api_group", Type: field.TypeString}, {Name: "method", Type: field.TypeString, Default: "POST"}, } // SysApisTable holds the schema information for the "sys_apis" table. SysApisTable = &schema.Table{ Name: "sys_apis", Columns: SysApisColumns, PrimaryKey: []*schema.Column{SysApisColumns[0]}, Indexes: []*schema.Index{ { Name: "api_path_method", Unique: true, Columns: []*schema.Column{SysApisColumns[3], SysApisColumns[6]}, }, }, } // SysDictionariesColumns holds the columns for the "sys_dictionaries" table. SysDictionariesColumns = []*schema.Column{ {Name: "id", Type: field.TypeUint64, Increment: true}, {Name: "created_at", Type: field.TypeTime}, {Name: "updated_at", Type: field.TypeTime}, {Name: "status", Type: field.TypeUint8, Nullable: true, Default: 1}, {Name: "title", Type: field.TypeString}, {Name: "name", Type: field.TypeString, Unique: true}, {Name: "desc", Type: field.TypeString}, } // SysDictionariesTable holds the schema information for the "sys_dictionaries" table. SysDictionariesTable = &schema.Table{ Name: "sys_dictionaries", Columns: SysDictionariesColumns, PrimaryKey: []*schema.Column{SysDictionariesColumns[0]}, } // SysDictionaryDetailsColumns holds the columns for the "sys_dictionary_details" table. SysDictionaryDetailsColumns = []*schema.Column{ {Name: "id", Type: field.TypeUint64, Increment: true}, {Name: "created_at", Type: field.TypeTime}, {Name: "updated_at", Type: field.TypeTime}, {Name: "status", Type: field.TypeUint8, Nullable: true, Default: 1}, {Name: "title", Type: field.TypeString}, {Name: "key", Type: field.TypeString}, {Name: "value", Type: field.TypeString}, {Name: "dictionary_dictionary_details", Type: field.TypeUint64, Nullable: true}, } // SysDictionaryDetailsTable holds the schema information for the "sys_dictionary_details" table. SysDictionaryDetailsTable = &schema.Table{ Name: "sys_dictionary_details", Columns: SysDictionaryDetailsColumns, PrimaryKey: []*schema.Column{SysDictionaryDetailsColumns[0]}, ForeignKeys: []*schema.ForeignKey{ { Symbol: "sys_dictionary_details_sys_dictionaries_dictionary_details", Columns: []*schema.Column{SysDictionaryDetailsColumns[7]}, RefColumns: []*schema.Column{SysDictionariesColumns[0]}, OnDelete: schema.SetNull, }, }, } // SysMenusColumns holds the columns for the "sys_menus" table. SysMenusColumns = []*schema.Column{ {Name: "id", Type: field.TypeUint64, Increment: true}, {Name: "created_at", Type: field.TypeTime}, {Name: "updated_at", Type: field.TypeTime}, {Name: "menu_level", Type: field.TypeUint32}, {Name: "menu_type", Type: field.TypeUint32}, {Name: "path", Type: field.TypeString, Nullable: true, Default: ""}, {Name: "name", Type: field.TypeString}, {Name: "redirect", Type: field.TypeString, Nullable: true, Default: ""}, {Name: "component", Type: field.TypeString, Nullable: true, Default: ""}, {Name: "order_no", Type: field.TypeUint32, Default: 0}, {Name: "disabled", Type: field.TypeBool, Nullable: true, Default: false}, {Name: "title", Type: field.TypeString}, {Name: "icon", Type: field.TypeString}, {Name: "hide_menu", Type: field.TypeBool, Nullable: true, Default: false}, {Name: "hide_breadcrumb", Type: field.TypeBool, Nullable: true, Default: false}, {Name: "current_active_menu", Type: field.TypeString, Nullable: true, Default: ""}, {Name: "ignore_keep_alive", Type: field.TypeBool, Nullable: true, Default: false}, {Name: "hide_tab", Type: field.TypeBool, Nullable: true, Default: false}, {Name: "frame_src", Type: field.TypeString, Nullable: true, Default: ""}, {Name: "carry_param", Type: field.TypeBool, Nullable: true, Default: false}, {Name: "hide_children_in_menu", Type: field.TypeBool, Nullable: true, Default: false}, {Name: "affix", Type: field.TypeBool, Nullable: true, Default: false}, {Name: "dynamic_level", Type: field.TypeUint32, Nullable: true, Default: 20}, {Name: "real_path", Type: field.TypeString, Nullable: true, Default: ""}, {Name: "parent_id", Type: field.TypeUint64, Nullable: true}, } // SysMenusTable holds the schema information for the "sys_menus" table. SysMenusTable = &schema.Table{ Name: "sys_menus", Columns: SysMenusColumns, PrimaryKey: []*schema.Column{SysMenusColumns[0]}, ForeignKeys: []*schema.ForeignKey{ { Symbol: "sys_menus_sys_menus_children", Columns: []*schema.Column{SysMenusColumns[24]}, RefColumns: []*schema.Column{SysMenusColumns[0]}, OnDelete: schema.SetNull, }, }, } // SysMenuParamsColumns holds the columns for the "sys_menu_params" table. SysMenuParamsColumns = []*schema.Column{ {Name: "id", Type: field.TypeUint64, Increment: true}, {Name: "created_at", Type: field.TypeTime}, {Name: "updated_at", Type: field.TypeTime}, {Name: "type", Type: field.TypeString}, {Name: "key", Type: field.TypeString}, {Name: "value", Type: field.TypeString}, {Name: "menu_params", Type: field.TypeUint64, Nullable: true}, } // SysMenuParamsTable holds the schema information for the "sys_menu_params" table. SysMenuParamsTable = &schema.Table{ Name: "sys_menu_params", Columns: SysMenuParamsColumns, PrimaryKey: []*schema.Column{SysMenuParamsColumns[0]}, ForeignKeys: []*schema.ForeignKey{ { Symbol: "sys_menu_params_sys_menus_params", Columns: []*schema.Column{SysMenuParamsColumns[6]}, RefColumns: []*schema.Column{SysMenusColumns[0]}, OnDelete: schema.SetNull, }, }, } // SysOauthProvidersColumns holds the columns for the "sys_oauth_providers" table. SysOauthProvidersColumns = []*schema.Column{ {Name: "id", Type: field.TypeUint64, Increment: true}, {Name: "created_at", Type: field.TypeTime}, {Name: "updated_at", Type: field.TypeTime}, {Name: "name", Type: field.TypeString, Unique: true}, {Name: "client_id", Type: field.TypeString}, {Name: "client_secret", Type: field.TypeString}, {Name: "redirect_url", Type: field.TypeString}, {Name: "scopes", Type: field.TypeString}, {Name: "auth_url", Type: field.TypeString}, {Name: "token_url", Type: field.TypeString}, {Name: "auth_style", Type: field.TypeUint64}, {Name: "info_url", Type: field.TypeString}, } // SysOauthProvidersTable holds the schema information for the "sys_oauth_providers" table. SysOauthProvidersTable = &schema.Table{ Name: "sys_oauth_providers", Columns: SysOauthProvidersColumns, PrimaryKey: []*schema.Column{SysOauthProvidersColumns[0]}, } // SysRolesColumns holds the columns for the "sys_roles" table. SysRolesColumns = []*schema.Column{ {Name: "id", Type: field.TypeUint64, Increment: true}, {Name: "created_at", Type: field.TypeTime}, {Name: "updated_at", Type: field.TypeTime}, {Name: "status", Type: field.TypeUint8, Nullable: true, Default: 1}, {Name: "name", Type: field.TypeString}, {Name: "value", Type: field.TypeString, Unique: true}, {Name: "default_router", Type: field.TypeString, Default: "dashboard"}, {Name: "remark", Type: field.TypeString, Default: ""}, {Name: "order_no", Type: field.TypeUint32, Default: 0}, } // SysRolesTable holds the schema information for the "sys_roles" table. SysRolesTable = &schema.Table{ Name: "sys_roles", Columns: SysRolesColumns, PrimaryKey: []*schema.Column{SysRolesColumns[0]}, } // SysTokensColumns holds the columns for the "sys_tokens" table. SysTokensColumns = []*schema.Column{ {Name: "id", Type: field.TypeUint64, Increment: true}, {Name: "created_at", Type: field.TypeTime}, {Name: "updated_at", Type: field.TypeTime}, {Name: "status", Type: field.TypeUint8, Nullable: true, Default: 1}, {Name: "uuid", Type: field.TypeString}, {Name: "token", Type: field.TypeString}, {Name: "source", Type: field.TypeString}, {Name: "expired_at", Type: field.TypeTime}, } // SysTokensTable holds the schema information for the "sys_tokens" table. SysTokensTable = &schema.Table{ Name: "sys_tokens", Columns: SysTokensColumns, PrimaryKey: []*schema.Column{SysTokensColumns[0]}, Indexes: []*schema.Index{ { Name: "token_uuid", Unique: false, Columns: []*schema.Column{SysTokensColumns[4]}, }, { Name: "token_expired_at", Unique: false, Columns: []*schema.Column{SysTokensColumns[7]}, }, }, } // SysUsersColumns holds the columns for the "sys_users" table. SysUsersColumns = []*schema.Column{ {Name: "id", Type: field.TypeUint64, Increment: true}, {Name: "created_at", Type: field.TypeTime}, {Name: "updated_at", Type: field.TypeTime}, {Name: "status", Type: field.TypeUint8, Nullable: true, Default: 1}, {Name: "uuid", Type: field.TypeString}, {Name: "username", Type: field.TypeString, Unique: true}, {Name: "password", Type: field.TypeString}, {Name: "nickname", Type: field.TypeString, Unique: true}, {Name: "side_mode", Type: field.TypeString, Nullable: true, Default: "dark"}, {Name: "base_color", Type: field.TypeString, Nullable: true, Default: "#fff"}, {Name: "active_color", Type: field.TypeString, Nullable: true, Default: "#1890ff"}, {Name: "role_id", Type: field.TypeUint64, Nullable: true, Default: 2}, {Name: "mobile", Type: field.TypeString, Nullable: true}, {Name: "email", Type: field.TypeString, Nullable: true}, {Name: "avatar", Type: field.TypeString, Nullable: true, Default: "", SchemaType: map[string]string{"mysql": "varchar(512)"}}, } // SysUsersTable holds the schema information for the "sys_users" table. SysUsersTable = &schema.Table{ Name: "sys_users", Columns: SysUsersColumns, PrimaryKey: []*schema.Column{SysUsersColumns[0]}, Indexes: []*schema.Index{ { Name: "user_username_email", Unique: true, Columns: []*schema.Column{SysUsersColumns[5], SysUsersColumns[13]}, }, }, } // RoleMenusColumns holds the columns for the "role_menus" table. RoleMenusColumns = []*schema.Column{ {Name: "role_id", Type: field.TypeUint64}, {Name: "menu_id", Type: field.TypeUint64}, } // RoleMenusTable holds the schema information for the "role_menus" table. RoleMenusTable = &schema.Table{ Name: "role_menus", Columns: RoleMenusColumns, PrimaryKey: []*schema.Column{RoleMenusColumns[0], RoleMenusColumns[1]}, ForeignKeys: []*schema.ForeignKey{ { Symbol: "role_menus_role_id", Columns: []*schema.Column{RoleMenusColumns[0]}, RefColumns: []*schema.Column{SysRolesColumns[0]}, OnDelete: schema.Cascade, }, { Symbol: "role_menus_menu_id", Columns: []*schema.Column{RoleMenusColumns[1]}, RefColumns: []*schema.Column{SysMenusColumns[0]}, OnDelete: schema.Cascade, }, }, } // Tables holds all the tables in the schema. Tables = []*schema.Table{ SysApisTable, SysDictionariesTable, SysDictionaryDetailsTable, SysMenusTable, SysMenuParamsTable, SysOauthProvidersTable, SysRolesTable, SysTokensTable, SysUsersTable, RoleMenusTable, } )
Functions ¶
Types ¶
type Schema ¶
type Schema struct {
// contains filtered or unexported fields
}
Schema is the API for creating, migrating and dropping a schema.
Click to show internal directories.
Click to hide internal directories.