ch4.8
This commit is contained in:
@@ -3,7 +3,6 @@ package main
|
||||
import (
|
||||
"errors"
|
||||
"fmt"
|
||||
"html/template"
|
||||
"net/http"
|
||||
"strconv"
|
||||
|
||||
@@ -15,20 +14,29 @@ func (app *application) home(w http.ResponseWriter, r *http.Request) {
|
||||
app.notFound(w)
|
||||
return
|
||||
}
|
||||
files := []string{
|
||||
"./ui/html/base.tmpl",
|
||||
"./ui/html/partials/nav.tmpl",
|
||||
"./ui/html/pages/home.tmpl",
|
||||
}
|
||||
ts, err := template.ParseFiles(files...)
|
||||
|
||||
snippets, err := app.snippets.Latest()
|
||||
if err != nil {
|
||||
app.serverError(w, err)
|
||||
return
|
||||
}
|
||||
err = ts.ExecuteTemplate(w, "base", nil)
|
||||
if err != nil {
|
||||
app.serverError(w, err)
|
||||
for _, snippet := range snippets {
|
||||
fmt.Fprintf(w, "%+v\n", snippet)
|
||||
}
|
||||
// files := []string{
|
||||
// "./ui/html/base.tmpl",
|
||||
// "./ui/html/partials/nav.tmpl",
|
||||
// "./ui/html/pages/home.tmpl",
|
||||
// }
|
||||
// ts, err := template.ParseFiles(files...)
|
||||
// if err != nil {
|
||||
// app.serverError(w, err)
|
||||
// return
|
||||
// }
|
||||
// err = ts.ExecuteTemplate(w, "base", nil)
|
||||
// if err != nil {
|
||||
// app.serverError(w, err)
|
||||
// }
|
||||
}
|
||||
|
||||
func (app *application) snippetView(w http.ResponseWriter, r *http.Request) {
|
||||
|
||||
@@ -50,5 +50,25 @@ func (m *SnippetModel) Get(id int) (*Snippet, error) {
|
||||
}
|
||||
|
||||
func (m *SnippetModel) Latest() ([]*Snippet, error) {
|
||||
return nil, nil
|
||||
stmt := `SELECT id, title, content, created, expires FROM snippets
|
||||
WHERE expires > UTC_TIMESTAMP() ORDER BY id DESC LIMIT 10`
|
||||
|
||||
rows, err := m.DB.Query(stmt)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
defer rows.Close()
|
||||
snippets := []*Snippet{}
|
||||
for rows.Next() {
|
||||
s := &Snippet{}
|
||||
err = rows.Scan(&s.ID, &s.Title, &s.Content, &s.Created, &s.Expires)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
snippets = append(snippets, s)
|
||||
}
|
||||
if err = rows.Err(); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return snippets, nil
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user