// Copyright 2019-present Facebook Inc. All rights reserved. // This source code is licensed under the Apache 2.0 license found // in the LICENSE file in the root directory of this source tree. // Code generated by ent, DO NOT EDIT. package migrate import ( "entgo.io/ent/dialect/sql/schema" "entgo.io/ent/schema/field" ) var ( // FriendshipsColumns holds the columns for the "friendships" table. FriendshipsColumns = []*schema.Column{ {Name: "id", Type: field.TypeInt, Increment: true}, {Name: "weight", Type: field.TypeInt, Default: 1}, {Name: "created_at", Type: field.TypeTime}, {Name: "user_id", Type: field.TypeInt}, {Name: "friend_id", Type: field.TypeInt}, } // FriendshipsTable holds the schema information for the "friendships" table. FriendshipsTable = &schema.Table{ Name: "friendships", Columns: FriendshipsColumns, PrimaryKey: []*schema.Column{FriendshipsColumns[0]}, ForeignKeys: []*schema.ForeignKey{ { Symbol: "friendships_users_user", Columns: []*schema.Column{FriendshipsColumns[3]}, RefColumns: []*schema.Column{UsersColumns[0]}, OnDelete: schema.NoAction, }, { Symbol: "friendships_users_friend", Columns: []*schema.Column{FriendshipsColumns[4]}, RefColumns: []*schema.Column{UsersColumns[0]}, OnDelete: schema.NoAction, }, }, Indexes: []*schema.Index{ { Name: "friendship_created_at", Unique: false, Columns: []*schema.Column{FriendshipsColumns[2]}, }, { Name: "friendship_user_id_friend_id", Unique: true, Columns: []*schema.Column{FriendshipsColumns[3], FriendshipsColumns[4]}, }, }, } // GroupsColumns holds the columns for the "groups" table. GroupsColumns = []*schema.Column{ {Name: "id", Type: field.TypeInt, Increment: true}, {Name: "name", Type: field.TypeString, Default: "unknown"}, } // GroupsTable holds the schema information for the "groups" table. GroupsTable = &schema.Table{ Name: "groups", Columns: GroupsColumns, PrimaryKey: []*schema.Column{GroupsColumns[0]}, } // ParentsColumns holds the columns for the "parents" table. ParentsColumns = []*schema.Column{ {Name: "id", Type: field.TypeInt, Increment: true}, {Name: "by_adoption", Type: field.TypeBool, Default: false}, {Name: "user_id", Type: field.TypeInt}, {Name: "parent_id", Type: field.TypeInt}, } // ParentsTable holds the schema information for the "parents" table. ParentsTable = &schema.Table{ Name: "parents", Columns: ParentsColumns, PrimaryKey: []*schema.Column{ParentsColumns[0]}, ForeignKeys: []*schema.ForeignKey{ { Symbol: "parents_users_child", Columns: []*schema.Column{ParentsColumns[2]}, RefColumns: []*schema.Column{UsersColumns[0]}, OnDelete: schema.NoAction, }, { Symbol: "parents_users_parent", Columns: []*schema.Column{ParentsColumns[3]}, RefColumns: []*schema.Column{UsersColumns[0]}, OnDelete: schema.NoAction, }, }, Indexes: []*schema.Index{ { Name: "parent_user_id_parent_id", Unique: true, Columns: []*schema.Column{ParentsColumns[2], ParentsColumns[3]}, }, }, } // PetsColumns holds the columns for the "pets" table. PetsColumns = []*schema.Column{ {Name: "id", Type: field.TypeInt, Increment: true}, {Name: "name", Type: field.TypeString, Default: "unknown"}, {Name: "owner_id", Type: field.TypeInt, Nullable: true}, } // PetsTable holds the schema information for the "pets" table. PetsTable = &schema.Table{ Name: "pets", Columns: PetsColumns, PrimaryKey: []*schema.Column{PetsColumns[0]}, ForeignKeys: []*schema.ForeignKey{ { Symbol: "pets_users_pets", Columns: []*schema.Column{PetsColumns[2]}, RefColumns: []*schema.Column{UsersColumns[0]}, OnDelete: schema.SetNull, }, }, } // UsersColumns holds the columns for the "users" table. UsersColumns = []*schema.Column{ {Name: "id", Type: field.TypeInt, Increment: true}, {Name: "name", Type: field.TypeString, Default: "unknown"}, } // UsersTable holds the schema information for the "users" table. UsersTable = &schema.Table{ Name: "users", Columns: UsersColumns, PrimaryKey: []*schema.Column{UsersColumns[0]}, } // GroupUsersColumns holds the columns for the "group_users" table. GroupUsersColumns = []*schema.Column{ {Name: "group_id", Type: field.TypeInt}, {Name: "user_id", Type: field.TypeInt}, } // GroupUsersTable holds the schema information for the "group_users" table. GroupUsersTable = &schema.Table{ Name: "group_users", Columns: GroupUsersColumns, PrimaryKey: []*schema.Column{GroupUsersColumns[0], GroupUsersColumns[1]}, ForeignKeys: []*schema.ForeignKey{ { Symbol: "group_users_group_id", Columns: []*schema.Column{GroupUsersColumns[0]}, RefColumns: []*schema.Column{GroupsColumns[0]}, OnDelete: schema.Cascade, }, { Symbol: "group_users_user_id", Columns: []*schema.Column{GroupUsersColumns[1]}, RefColumns: []*schema.Column{UsersColumns[0]}, OnDelete: schema.Cascade, }, }, } // Tables holds all the tables in the schema. Tables = []*schema.Table{ FriendshipsTable, GroupsTable, ParentsTable, PetsTable, UsersTable, GroupUsersTable, } ) func init() { FriendshipsTable.ForeignKeys[0].RefTable = UsersTable FriendshipsTable.ForeignKeys[1].RefTable = UsersTable ParentsTable.ForeignKeys[0].RefTable = UsersTable ParentsTable.ForeignKeys[1].RefTable = UsersTable PetsTable.ForeignKeys[0].RefTable = UsersTable GroupUsersTable.ForeignKeys[0].RefTable = GroupsTable GroupUsersTable.ForeignKeys[1].RefTable = UsersTable }