Add todo schema
This commit is contained in:
@@ -30,6 +30,29 @@ var (
|
||||
},
|
||||
},
|
||||
}
|
||||
// TodosColumns holds the columns for the "todos" table.
|
||||
TodosColumns = []*schema.Column{
|
||||
{Name: "id", Type: field.TypeInt, Increment: true},
|
||||
{Name: "created_at", Type: field.TypeTime},
|
||||
{Name: "updated_at", Type: field.TypeTime},
|
||||
{Name: "title", Type: field.TypeString, Default: ""},
|
||||
{Name: "completed", Type: field.TypeBool, Default: false},
|
||||
{Name: "todo_user", Type: field.TypeInt, Nullable: true},
|
||||
}
|
||||
// TodosTable holds the schema information for the "todos" table.
|
||||
TodosTable = &schema.Table{
|
||||
Name: "todos",
|
||||
Columns: TodosColumns,
|
||||
PrimaryKey: []*schema.Column{TodosColumns[0]},
|
||||
ForeignKeys: []*schema.ForeignKey{
|
||||
{
|
||||
Symbol: "todos_users_user",
|
||||
Columns: []*schema.Column{TodosColumns[5]},
|
||||
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},
|
||||
@@ -47,10 +70,12 @@ var (
|
||||
// Tables holds all the tables in the schema.
|
||||
Tables = []*schema.Table{
|
||||
GoogleAuthsTable,
|
||||
TodosTable,
|
||||
UsersTable,
|
||||
}
|
||||
)
|
||||
|
||||
func init() {
|
||||
GoogleAuthsTable.ForeignKeys[0].RefTable = UsersTable
|
||||
TodosTable.ForeignKeys[0].RefTable = UsersTable
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user