더북(TheBook)

Update 액션 메서드 작성

두 번째 액션은 사용자가 폼으로 전송한 포스트 정보를 데이터베이스에 저장하는 Update 액션이다. Post 컨트롤러에 다음 코드를 추가하자.

▼ app/controllers/post.go

func (c Post) Update(id int, title, body string) revel.Result {
    // 포스트 내용 수정
    if _, err := c.Txn.Exec("update posts set title=?, body=?, updated_at=? where id=?", title, body, time.Now(), id); err != nil {
        panic(err)
    }
 
    // 뷰에 Flash 메시지 전달
    c.Flash.Success("포스트 수정 완료")
     
    // 포스트 상세 보기 화면으로 이동
    return c.Redirect(routes.Post.Show(id))
}

전송된 정보를 바탕으로 포스트를 수정하고 포스트 컨트롤러의 Show 액션으로 리다이렉트한다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.