15 lines
581 B
Go
15 lines
581 B
Go
package models
|
|
|
|
type Role struct {
|
|
ID uint64 `gorm:"type:bigint unsigned;autoIncrement;primaryKey" json:"id"`
|
|
Name string `gorm:"uniqueIndex;not null" json:"name"` // admin, user
|
|
Description string `json:"description"`
|
|
Permissions []Permission `gorm:"many2many:role_permissions;" json:"permissions"`
|
|
}
|
|
|
|
type Permission struct {
|
|
ID uint64 `gorm:"type:bigint unsigned;autoIncrement;primaryKey" json:"id"`
|
|
Name string `gorm:"uniqueIndex;not null" json:"name"` // user:read, user:write
|
|
Description string `json:"description"`
|
|
}
|