Q:

Go r.FormValue is empty

I got an html form where I put values and insert them into the database. but when I insert them the values appear in the db like "".
This is how I insert the values:
title, author, description := r.Form("title"), r.FormValue("author"), r.FormValue("description")

    fmt.Println(title, author, description)

    rows, err := db.Query("INSERT INTO apps (title, author, description) VALUES ($1, $2, $3)",
        title, author, description)
    PanicIf(err)

    defer rows.Close()

    http.Redirect(w, r, "/myapps", http.StatusFound)

    db.Close()

Html :
<form action="/apps" method="POST">
    <div class="form-group">
        <label>Name</label>
        <input type="text" class="form-control" name="title" />
    </div>
    <div class="form-group">
        <label>Author</label>
        <input type="text" class="form-control" name="author" />
    </div>
    <div class="form-group">
        <label>Description</label>
        <input type="text" class="form-control" name="description" />
    </div>

    <input type="submit" value="Create" class="btn btn-success" />
    <a href="/myapps">
        <input type="button" value="Return" class="btn btn-primary" />
    </a>
</form>

There is maybe something wrong with the formvalues?

A:

You have to call r.ParseForm() first before you could use  r.Form / r.PostForm.
From: http://golang.org/src/pkg/net/http/request.go#L168
// Form contains the parsed form data, including both the URL
// field's query parameters and the POST or PUT form data.
// This field is only available after ParseForm is called.
// The HTTP client ignores Form and uses Body instead.
Form url.Values

// PostForm contains the parsed form data from POST or PUT
// body parameters.
// This field is only available after ParseForm is called.
// The HTTP client ignores PostForm and uses Body instead.
PostForm url.Values

