10.3.4 포스트 목록 보기
전체 포스트 목록을 출력하는 기능을 작성해 보자.
Index 액션 작성
포스트 컨트롤러에 Index 액션을 추가하기 위해 app/controller/post.go 파일에 다음 코드를 추가한다.
▼ app/controllers/post.go
func (c Post) Index() revel.Result { var posts []models.Post rows, err := c.Txn.Query("select id, title, body, created_at, updated_at from posts order by created_at desc") if err != nil { panic(err) } for rows.Next() { post := models.Post{} if err := rows.Scan(&post.Id, &post.Title, &post.Body, &post.CreatedAt, &post.UpdatedAt); err != nil { panic(err) } posts = append(posts, post) } return c.Render(posts) }
전체 포스트 목록을 조회하여 posts 변수에 저장했다. c.Render(posts)로 렌더링해주면 뷰에서 posts 변수에 접근할 수 있다.