Make admin menu links dynamic.
This commit is contained in:
parent
8219b96df7
commit
36bc20b90f
6 changed files with 42 additions and 15 deletions
|
|
@ -156,10 +156,11 @@
|
|||
}
|
||||
|
||||
func (h *Handler) {{ $n.Name }}List(ctx echo.Context) (*EntityList, error) {
|
||||
page, offset := h.getPageAndOffset(ctx)
|
||||
res, err := h.client.{{ $n.Name }}.
|
||||
Query().
|
||||
Limit(h.Config.ItemsPerPage+1).
|
||||
Offset(h.getOffset(ctx)).
|
||||
Offset(offset).
|
||||
Order({{ $n.Package }}.ByID(sql.OrderDesc())).
|
||||
All(ctx.Request().Context())
|
||||
|
||||
|
|
@ -176,6 +177,7 @@
|
|||
{{- end }}
|
||||
},
|
||||
Entities: make([]EntityValues, 0, len(res)),
|
||||
Page: page,
|
||||
HasNextPage: len(res) > h.Config.ItemsPerPage,
|
||||
}
|
||||
|
||||
|
|
@ -223,13 +225,13 @@
|
|||
}
|
||||
{{ end }}
|
||||
|
||||
func (h *Handler) getOffset(ctx echo.Context) int {
|
||||
func (h *Handler) getPageAndOffset(ctx echo.Context) (int, int) {
|
||||
if page, err := strconv.Atoi(ctx.QueryParam(h.Config.PageQueryKey)); err == nil {
|
||||
if page > 1 {
|
||||
return (page-1) * h.Config.ItemsPerPage
|
||||
return page, (page-1) * h.Config.ItemsPerPage
|
||||
}
|
||||
}
|
||||
return 0
|
||||
return 1, 0
|
||||
}
|
||||
|
||||
func (h *Handler) bind(ctx echo.Context, entity any) error {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue