Size: a a a

2021 June 20

с

сонная википедия... in Go-go!
источник

ЕК

Евгений Коновалов... in Go-go!
подскажите, через подобную структуру -
users := []User{
         {GroupP1: true},
         {LoggedIn: true},
         {SuperIngenerQuality: true},
         {User: u.LastName},
         {Username: u.FirstName},
       }
       
       передаю шаблон в data := map[string]interface{}{
       "GetUser": users,
       }
       tpl.ExecuteTemplate(w, "index.html", data)
       но в html сначала надо провалидировать условие LoggedIn, потом GroupP1, и далее SuperIngenerQuality, только вложения такого рода через цикл
       {{ range .GetUser}}
       {{if .LoggedIn}}
                   {{if .GroupP1}}
                   {{end}}
       {{end}}
       {{end}}
       не проходят дальше первого if. Не подскажете, как можно такую логику валидации реализовать?
источник

RS

Roman Sharkov in Go-go!
замокать то и gomock'ом можно
источник

с

сонная википедия... in Go-go!
тогда в чем проблема
источник

с

сонная википедия... in Go-go!
вообще адекватно реализовать мок времени несколько сложнее
источник

с

сонная википедия... in Go-go!
особенно, когда есть тикеры/таймеры
источник

RS

Roman Sharkov in Go-go!
вот у меня таймеры)
источник

с

сонная википедия... in Go-go!
так оба пакета выше умеют в таймеры и тикеры
источник

RS

Roman Sharkov in Go-go!
странно вы инициализируете массив пользователей.. у вас 5 пользователей в массиве, у каждого одно из полей?!
источник

с

сонная википедия... in Go-go!
можно просто

{{ if and (.LoggedIn .GroupP1) }}

https://pkg.go.dev/text/template#hdr-Functions
источник

V

Vladimir in Go-go!
чем кроме jsonpath можно процессить json в go?
источник

с

сонная википедия... in Go-go!
источник

V

Vladimir in Go-go!
спасибо, похоже он не умеет sum, как jq например
источник

с

сонная википедия... in Go-go!
sum можно и в Go сделать
источник

с

сонная википедия... in Go-go!
https://github.com/tidwall/gjson#custom-modifiers
но вообще можно свой modifier добавить
источник

V

Vladimir in Go-go!
это да
источник

ЕК

Евгений Коновалов... in Go-go!
нет, это один пользователь, но для его валидации я использую несколько флагов - logginin, group, role и собственно имя пользователя (string)
источник

ЕК

Евгений Коновалов... in Go-go!
пробовал, будет подобная ошибка - GroupP1 has arguments but cannot be invoked as function, подумаю, может это можно как-то итерировать через вложенные структуры
источник

с

сонная википедия... in Go-go!
а если {{ if and (.LoggedIn) (.GroupP1) }}
источник

AK

Andrey Kartashov in Go-go!
это именно 5 разных пользователей
источник