return hex.EncodeToString(hash[:]), nil
}
-// querify converts the given parameters into a url.Values object
-func querify(params ...interface{}) (url.Values, error) {
+// querify encodes the given parameters “URL encoded” form ("bar=baz&foo=quux") sorted by key.
+func querify(params ...interface{}) (string, error) {
qs := url.Values{}
vals, err := dictionary(params...)
if err != nil {
- return url.Values{}, fmt.Errorf("querify keys must be strings")
+ return "", fmt.Errorf("querify keys must be strings")
}
for name, value := range vals {
qs.Add(name, url.QueryEscape(fmt.Sprintf("%v", value)))
}
- return qs, nil
+ return qs.Encode(), nil
}
func init() {
mul: {{mul 2 3}}
plainify: {{ plainify "Hello <strong>world</strong>, gophers!" }}
pluralize: {{ "cat" | pluralize }}
-querify: {{ (querify "foo" 1 "bar" 2 "baz" "with spaces").Encode | safeHTML }}
+querify: {{ (querify "foo" 1 "bar" 2 "baz" "with spaces") | safeHTML }}
readDir: {{ range (readDir ".") }}{{ .Name }}{{ end }}
readFile: {{ readFile "README.txt" }}
relURL 1: {{ "http://gohugo.io/" | relURL }}