
Demuz
29.12.2017
09:08:25
Телеграм затирает эти штуки. Которые на букве ё. `
Сфоткаю. Так напишите сами, зато потренеруетесь.

Sergey
29.12.2017
09:08:47
ок

Demuz
29.12.2017
09:08:53

Google

Sergey
29.12.2017
09:11:12

Demuz
29.12.2017
09:11:32
У вас библиотеки iris нет. Говорю же.

Sergey
29.12.2017
09:12:06
[root@p469375 go]# go get github.com/kataras/iris
[root@p469375 go]#
[root@p469375 go]# go run xml_go.go
# command-line-arguments
./xml_go.go:12: undefined: iris.Context
[root@p469375 go]# go get -u github.com/kataras/iris
[root@p469375 go]# go run xml_go.go
# command-line-arguments
./xml_go.go:12: undefined: iris.Context

Demuz
29.12.2017
09:12:45

Sergey
29.12.2017
09:12:53
видимо

Demuz
29.12.2017
09:12:58
Зачем вы 2 раза пишете? )))

Sergey
29.12.2017
09:13:47
телеграм два раза отправил
)))

Igor
29.12.2017
09:14:00
научитесь уже пользоваться удалением

Demuz
29.12.2017
09:14:11
Я свои удалил)

Sergey
29.12.2017
09:14:56
ща гляну

Google

Sergey
29.12.2017
09:14:57
спасибо
видимо линукс надо смотреть path

Aslan
29.12.2017
09:28:31
привет ребят! с предстоящими праздниками вас :) вопрос - кто тут дружит с математикой? хотелось бы кое-что подсчитать... оплатим, если сможете справиться с задачей)

Kirill
29.12.2017
09:55:01

Arch
29.12.2017
09:55:07

Kirill
29.12.2017
09:55:36
о по теме - go get -v скажет больше, а во-вторых - go env
иногда нужен go get -v -u -f github.com/blah/blah

Arch
29.12.2017
09:57:21
народ, подскажите, есть ли в го функционал, чтобы часовой пояс выставить на все приложение, те допустим локальное время на сервере GMT+3 MSK, а софтина живет допустим в GMT-5 NY. после выславления, дата и время автоматом считаются по NY без всяких доп манипуляций
в php и питоне есть такой функционал

Kirill
29.12.2017
09:59:46

Arch
29.12.2017
10:07:00
Народ говорит мол не хорошо это, а на самом деле очень удобно, у меня на сервере живет порядка 5 приложений (сервисов) и некоторые из них работают в своих часовых поясах, если всё приложение живет в NY, то гемор конвертить туда - обратно, А так задал локаль и спокойно работаешь в ней
Можно конечно в контейнер это все запихать, но как-то не хочется городить такой оверхед из-за такого простого действия

Aleksandr
29.12.2017
10:35:42

Mikhail
29.12.2017
10:56:22
Ну вообще сервер/сервис/контейнер всегда в UTC-0, а в приложении выводится обычно под часовой пояс пользователя даты и время

Aleksandr
29.12.2017
10:57:11

Mikhail
29.12.2017
10:58:33
вот кстати похоже как на питоне и пхп https://golang.org/pkg/time/#LoadLocation

Aleksandr
29.12.2017
10:59:56

Arch
29.12.2017
11:04:31

Aleksandr
29.12.2017
11:05:18

Google

Aleksandr
29.12.2017
11:05:29
TZ=NY ./app
типа того
зону подставь правильную

Arch
29.12.2017
11:08:52
так и запускай приложение в нужной зоне
А что так можно было? (с)
Просто привык, что в питоне, в пыхе это решается одной - двумя строками)
Городить ради временной зоны контейнеры и всю эту блуду не очень хочется, тк это все поддерживать надо.
Можно конечно сделать отдельного пользователя и в нем задать временную зону и нужные переменные окружения, но хотелось бы красивое и элегантное решение, типа time.SetLocale(time.Time, "America/NewYork")

Aleksandr
29.12.2017
11:09:35
да, так можно

Arch
29.12.2017
11:11:14

Mykyta
29.12.2017
11:12:30
А что так можно было? (с)
Просто привык, что в питоне, в пыхе это решается одной - двумя строками)
Городить ради временной зоны контейнеры и всю эту блуду не очень хочется, тк это все поддерживать надо.
Можно конечно сделать отдельного пользователя и в нем задать временную зону и нужные переменные окружения, но хотелось бы красивое и элегантное решение, типа time.SetLocale(time.Time, "America/NewYork")
Так нельзя, потому, что выходит, что ты хранишь таймзону глобально, что очевидно делать нельзя. Временная зона - это бизнес-логика конкретных сущностей, а не всего приложения. Пхп он на то и пхп, чтобы все через жопу делать

Mikhail
29.12.2017
11:13:31
loc, _ := time.LoadLocation("America/New_York")
fmt.Println(time.Now().In(loc))

Arch
29.12.2017
11:14:21

Mikhail
29.12.2017
11:14:24

Aleksandr
29.12.2017
11:15:29

Arch
29.12.2017
11:16:19
Все же сводится к задаче, согласен, когда с временем пользователя работаешь - это зло, тогда UTC-0, а в данной задаче - это наоборот полезно избавляет от большиих портянок конвертаций, много конвертаций = баги

Mykyta
29.12.2017
11:16:34

Arch
29.12.2017
11:17:20
это характеное свойство гоферов)))

Mykyta
29.12.2017
11:19:36

Arch
29.12.2017
11:19:36
А если у вас таких объектов сотни миллионов?))))

Google

Aleksandr
29.12.2017
11:21:10

Mikhail
29.12.2017
11:21:12
ну тогда только в контейнере выставить и unixtime ?

Arch
29.12.2017
11:21:13
А если в секунду?)))

Mykyta
29.12.2017
11:21:37

Lucky
29.12.2017
11:22:01
Такой вопрос: у меня есть стракт в глобальном скопе, в нём мапа, которой я делаю make в func init(). При попытке положить что-то по ключу в другой функции я получаю assignment to entry in nil map, приходится там ещё раз делать make. Почему так?

Arch
29.12.2017
11:22:10

Admin
ERROR: S client not available

Vasily Romanov
29.12.2017
11:25:23

Mykyta
29.12.2017
11:26:05

Arch
29.12.2017
11:26:12

Mykyta
29.12.2017
11:27:42

Arch
29.12.2017
11:28:11
Так точно надо делать структуру с мьтексом
Ну вдруг человеку ее только читать надо
Допустим он пишет из одной, а читает из всех, например какой-нибудь ассоциативный массив сессий и клиентов

Lucky
29.12.2017
11:29:08

Arch
29.12.2017
11:31:35
Хорошо, не забывайте их использовать ?

Mykyta
29.12.2017
11:31:54

Lucky
29.12.2017
11:32:19

Google

Mykyta
29.12.2017
11:33:32
Хранить состояние в переменной уровня пакета - это тоже самое, что в жаваскрипте в свойстве window или в статической классе в жаве\шарпе

Lucky
29.12.2017
11:34:02
а где его хнанить ещё?

Mykyta
29.12.2017
11:34:29

Lucky
29.12.2017
11:35:34
там нечего хакать, а перекидывать аргументом во все функции как-то странно

Mykyta
29.12.2017
11:36:33
Это не какая-то особенная фишка го, что глобально ничего нельзя хранить

Daniel
29.12.2017
11:36:33

Lucky
29.12.2017
11:38:56
Ну и если не критично, то глобаку использовать проще

Mykyta
29.12.2017
11:40:44

Lucky
29.12.2017
11:41:14
Так я не говорю, что надо использовать глобальные где попало. Вопрос был про дублирование объявление мапы.

Mykyta
29.12.2017
11:43:47

Lucky
29.12.2017
11:44:15

Arch
29.12.2017
11:44:48
мейкай в глобал скопе
за пределами инита

Lucky
29.12.2017
11:46:09
non-declaration statement outside function body

Mykyta
29.12.2017
11:46:44
Так у меня всё в мейн пакете :^)
Тогда другой вопрос, зачем тебе что-то хранить в переменной пакета, если ты все равно пакет main никуда не сможешь заимпортировать?
покажи код уже, что ли

Lucky
29.12.2017
11:49:21
...
var (
dataGlobal DB
)
...
func init() {
dataGlobal.mx.Lock()
dataGlobal.Content = make(map[int]Element)
dataGlobal.mx.Unlock()
}
...
func some() {
...
dataGlobal.mx.Lock()
dataGlobal.Content[ptNew.PtypeID] = ptNew
dataGlobal.mx.Unlock()
...
}

Mykyta
29.12.2017
11:50:48
Вынеси в структуру с полем db и не мучийся