34 lines
717 B
Go
34 lines
717 B
Go
package models
|
|
|
|
import "gorm.io/gorm"
|
|
|
|
type File struct {
|
|
gorm.Model
|
|
|
|
PageKey string `gorm:"index:idx_pagekey,unique;unique"`
|
|
AdminKey string `gorm:"index:idx_adminkey"`
|
|
Filename string
|
|
Description string
|
|
Language string
|
|
Data string
|
|
SubmitterIP string
|
|
Email string `gorm:"index:idx_email"`
|
|
}
|
|
|
|
func CreateNewBin(db *gorm.DB, text, name, description, language, key, adminKey, ip string) (File, error) {
|
|
bin := File{
|
|
Filename: name,
|
|
Description: description,
|
|
Language: language,
|
|
PageKey: key,
|
|
AdminKey: adminKey,
|
|
Data: text,
|
|
SubmitterIP: ip,
|
|
}
|
|
result := db.Create(&bin)
|
|
if result.Error != nil {
|
|
return File{}, result.Error
|
|
}
|
|
return bin, nil
|
|
}
|