LINUX.ORG.RU

Проверка в Golang

 


0

1

Привет. Как правильно написать такую конструкцию на go?

{{if (eq .Type "tcp") or (eq .Type "udp")}}

Не могу понять, в чем проблема.

P.S С go не работал никогда, так что сильно не пинать)



Последнее исправление: flappyright (всего исправлений: 1)

Ответ на: комментарий от menangen

Спасибо, но мне не тип нужно определить. У меня есть конструкция по типу:

<label for="service_url" class="col-sm-4 col-form-label">
    {{if (eq .Type "tcp") or (eq .Type "udp")}}Host/IP Address{{else}}Application Endpoint (URL){{end}}
</label>
Которая возвращает ошибку:
executing "form_service" at <(eq .Type "tcp") or (eq .Type "udp")>: can't give argument to non-function eq .Type "tcp"

Если убрать проверку «or» и оставить только:

{{if eq .Type "tcp"}}...
то все работает, только нарушается логика программы. Вот я и пытаюсь понять, почему такая конструкция не хочет работать.

flappyright
() автор топика

речь про html-шаблоны чтоли? Ну почитал бы про их синтаксис, элементарно же

t, err := template.New("foo").Parse(`
<label for="service_url" class="col-sm-4 col-form-label">
  {{if or (eq .Type "tcp") (eq .Type "udp")}}
    Host/IP Address
  {{else}}
    Application Endpoint (URL)
  {{end}}
</label>
  `)
Lrrr ★★★★★
()
Ответ на: комментарий от Lrrr

Да, ты прав. Уже сам нашел как правильно) Спасибо большое)

flappyright
() автор топика
Ответ на: комментарий от Lrrr

Я ещё подумал: «на каком языке писал чел до этого?»

menangen ★★★★★
()
Ответ на: комментарий от Lrrr

Я бы на go ничего бы не стал писать кроме отдельных микросервисов там где нода/питон не справятся (cpu bound).

tz4678 ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.