Skip to main content

monolith-controller-and-view-development

Use when building HTTP controllers and templates, including REST action scaffolding, view rendering patterns, and route wiring.

Informations de source

Dépôt
cggonzal/monolith
Dernière activité de la source
14 février 2026 à 03:11
Langue détectée de SKILL.md
anglais
Étoiles
0
Forks
0

Options d'installation

Le prompt qui vérifie d'abord la source est sélectionné par défaut. Vous pouvez passer à une commande directe ou télécharger une copie locale.

Vérifiez les fichiers source

Lisez SKILL.md et les fichiers associés affichés par SkillsMP avant de décider de l'installer.

Affichage de SKILL.md

SKILL.md
Instructions source · Aperçu en lecture seule
name
monolith-controller-and-view-development
description
Use when building HTTP controllers and templates, including REST action scaffolding, view rendering patterns, and route wiring.
# Monolith Controller and View Development ## Use this skill when - Creating request handlers in `app/controllers/`. - Generating or editing templates in `app/views/`. ## Fast start - Controller scaffold: `make generator controller widgets index show` - Full CRUD controller/views: `make generator controller widgets all` ## REST action mapping - `Index` → `GET /resources` - `Show` → `GET /resources/{id}` - `New` → `GET /resources/new` - `Create` → `POST /resources` - `Edit` → `GET /resources/{id}/edit` - `Update` → `PUT/PATCH /resources/{id}` - `Destroy` → `DELETE /resources/{id}` ## Rendering pattern Use `views.Render(w, "template_name.html.tmpl", data)`. Templates are pre-parsed at startup by `views.InitTemplates(...)`. ## Template naming convention Generators produce files like: - `app/views/widgets/widgets_index.html.tmpl` - `app/views/widgets/widgets_show.html.tmpl` - `app/views/widgets/widgets_new.html.tmpl` - `app/views/widgets/widgets_edit.html.tmpl` ## Implementation checklist 1. Parse path params with `r.PathValue("id")` for ID routes. 2. Load/save model data via `db.GetDB()` + model helpers. 3. Render template or redirect as appropriate. 4. Register route in `app/routes/routes.go` (generator does this when actions are provided). 5. Add/adjust controller tests.
Voir sur GitHub