DropColumn(如果存在于GORM中)

Refering this help doc, there is a drop table if exists syntax db.DropTableIfExists(&User{}, "products") but for db.Model(&User{}).DropColumn("description") DropColumnIfExists doesn't exists. What should I use to implement DropColumn (if the column exists, otherwise not.)

What should I use to implement DropColumn (if the column exists, otherwise not.)

To answer your question...

Go ahead with that. You can use db.Model(&User{}).DropColumn("description").

Just handle the errors gracefully. Remember, in Golang, Errors are values.

func main() {
    db.AutoMigrate(&User{})

    err := db.Model(&User{}).DropColumn("description").Error
    if err != nil {
        // Do whatever you want to do!
        log.Print("ERROR: We expect the description column to be 
drop-able")
    }
}

Under the Hood, gorm will execute raw postgresql query if it has no error. Otherwise, it will return the error.

I hope this will answer your question. :)