Итак, я хочу создать скрипт категории для продуктов.
Как я могу построить дерево категорий?
У меня есть БД, подобная этой ...
CREATE TABLE categories (
cat_id integer GENERATED BY DEFAULT AS IDENTITY PRIMARY KEY,
parent_id integer NOT NULL,
cat_name CHAR(24) NULL DEFAULT NULL,
cat_position tinyint NOT NULL,
icon TEXT NULL DEFAULT NULL,
keywords text NOT NULL, //for search
active boolean NULL DEFAULT true,
cat_description CHAR(128) NULL DEFAULT NULL
);
Но я не могу понять, как это работает, потому что 1 продукт может быть найден во многих категориях ...
Я кодирую на GoLang
Теперь мне нравитсяэто ...
rows, err := db.Query("SELECT cat_id, parent_id, cat_name FROM categories WHERE active = true ORDER BY Parent_id ASC")
if err != nil {
http.Error(w, http.StatusText(500), 500)
return
}
defer rows.Close()
Затем я помещаю строки в шаблон ...
{{range .}}
<p><a href="/show?getinfo={{ .Cat_id}}">{{ .Cat_id}}</a> - {{ .Parent_id}} - {{ .Cat_name}} <a href="/show?getinfo={{ .Cat_id}}">Показать</a>
{{end}}
В конце я бы хотел получить что-то похожее на это