10.7.3 기본 계정 생성
데이터베이스를 초기화할 때 관리자 계정은 기본으로 생성되게 한다. app/controllers/gorm.go 파일의 migrate() 함수에서 다음과 같이 관리자 계정을 생성하는 코드를 작성해 보자.
▼ app/controllers/gorm.go
const ( DefaultName, DefaultRole, DefaultUsername, DefaultPassword = "Admin", "admin", "admin", "admin" ) func migrate() { db.AutoMigrate(&models.Post{}, &models.Comment{}, &models.User{}) bcryptPassword, _ := bcrypt.GenerateFromPassword([]byte(DefaultPassword), bcrypt. DefaultCost) db.Where(models.User{Name: DefaultName, Role: DefaultRole, Username: DefaultUsername}). Attrs(models.User{Password: string(bcryptPassword)}). FirstOrCreate(&models.User{}) }
운영 환경에 배포하고 나면 관리자 계정의 패스워드는 바로 변경해야 한다. 패스워드 변경 기능 구현은 소개하지 않는다. 스스로 구현해 보자.