
Aleksandr
19.07.2018
14:08:41
у тебя же там 2 не индекс, а ключ
либо выводи не ключ, а i, который отдельно считай

Alexei
19.07.2018
14:10:41
там индекс, согласен, просто откатил на начало, без каких либо манипуляций, отдельно тоже пробовал, не выходит каменный цветок

Google

Илья
19.07.2018
14:13:39

Alexei
19.07.2018
14:20:35
Всем огромное спасибо, вопрос решили :)

Artem
19.07.2018
14:22:22
всем привет
как корректно распрсить json в структуру
приходит в виде
{
"list": {
"data": [
{
"dataid": 5,
"name": "nameOne"
},
{
"dataid": 7,
"name": "nameOne"
}
]
}
}
у меня есть структура
type Info struct {
ID bson.ObjectId `bson:"_id" json:"id"`
Dataid int `bson:"dataid" json:"dataid"`
Name string `bson:"name" json:"name"`
}
при этом
b, err = ioutil.ReadAll(res.Body)
var temp []Info
err = json.Unmarshal(b, &temp)
if err != nil {
log.Println(err)
return
}
отдает мне cannot unmarshal object into Go value of type
если разбирать не в слайс то создается один пустой объект структуры а не много
что не так я делаю?

Daniel
19.07.2018
14:24:00
list забыли

Aleksandr
19.07.2018
14:24:06
и data
https://mholt.github.io/json-to-go/

Daniel
19.07.2018
14:24:59
вооще - вам сюда: https://mholt.github.io/json-to-go/

Aleksandr
19.07.2018
14:25:04
вот это тут пригодится

Artem
19.07.2018
14:25:13
те мне нужно описать прям всю структуру в таком же виде?

Aleksandr
19.07.2018
14:25:57
либо структура соответствует схеме. либо пишете свой анмаршаллер

Artem
19.07.2018
14:26:42
бааалин(

Google

Илья
19.07.2018
14:37:42

Artem
19.07.2018
14:38:14

Илья
19.07.2018
14:39:40
плохо сделал значит

Artem
19.07.2018
14:42:25
type AutoGenerated struct {
List struct {
Data []struct {
Dataid int `json:"dataid"`
Name string `json:"name"`
} `json:"data"`
} `json:"list"`
}
это тоже неверно?

Илья
19.07.2018
14:42:53
см playground

Artem
19.07.2018
14:57:34
спасибо, в теге опечатался)

Андрей
19.07.2018
18:39:16
Друзья, подскажите, у меня есть функция auth это мидлвар, а как мне передать из неё данные в следующую за ней функцию secret , вот код, они в самом низу https://github.com/tsepen/lan-place/blob/master/handlers/users.go

Aleksandr
19.07.2018
18:52:34

Alexander
19.07.2018
23:18:00
тестирую свое приложение через wireshark и вижу ошибку tcp zero window
быстрое гуглениче чет не помогло
никто не в курсе что за зверь?

Aleksandr
19.07.2018
23:33:21

Daniel
19.07.2018
23:33:51
Не помогло же...

Alexander
19.07.2018
23:34:05
Да, конечно же я сам сначала погуглил и пришёл к выводу, что клиент не успевает обработать Сообщения
Все верно понял?

Daniel
19.07.2018
23:34:15
Правда, тут только гильотинирование

Alexander
19.07.2018
23:34:59
Но чёт непонятно почему клиент внезапно не успевает

Roman
20.07.2018
03:52:49
А кто нибудь через viper сохранял конфиг в $HOME?
как это сделать?
GlobalConfig = viper.New()
GlobalConfig.SetConfigFile("$HOME/" + configFileName)
// global open $HOME/.jessica.yml: no such file or directory
и
GlobalConfig = viper.New()
GlobalConfig.SetConfigFile("~/" + configFileName)
// global open ~/.jessica.yml: no such file or directory
Не сработало, надо достать значение из переменной окружения и составить полный путь? или я что-то не так делаю?
GlobalConfig.SetConfigFile(os.Getenv("HOME") + "/" + configFileName)
вот так сработало, но вообще интересно, можно ли сделать короче

Google

Artem
20.07.2018
04:07:01
Да можно, через AutomaticEnv он разбирает переменные с нужным префиксом, кроме SetConfigFile можно указать AddConfigPath тут неплохо описано https://blog.gopheracademy.com/advent-2014/configuration-with-fangs/

Andrey
20.07.2018
04:32:08

Roman
20.07.2018
04:32:51


Evgeny
20.07.2018
04:50:04
Подскажите, пожалуйста, по ситуации. Глаз вообще замылился.
Использую MGO. Меняю документ, у значения обновляю параметр bool. Обновление с true на false, а затем обратно с false на true проходит штатно. Меняю через $set. Последующие изменения параметра вообще не приводят к результату.
В самой консоли mongo параметр вручную изменяется без проблем сколько угодно раз, то же самое через Compass.
Пытался вывести какие-либо ошибки у MGO всё пусто, запрос как бы уходит.
Где следует поискать ошибку ?

Андрей
20.07.2018
05:03:06
Всем добра, подскажите планируются ли а ближайшее время какие то конференции или мероприятия по golang в России? Может дадите ссылку где можно следить за предстоящими событиями ?

/dev/null
20.07.2018
06:10:43
Ребят, можете помочь с кодревью буквально пару функций.
Набыдлокодил прямо сказать, а вот как правильно это реализовать, чтобы еще больше не набыдлокодить…

Michael
20.07.2018
06:13:06

/dev/null
20.07.2018
06:14:20
https://pastebin.com/fwEtG2Z6
Вот код… помогите пжст

Zhenja
20.07.2018
06:15:47
log.Fatalf после return?

/dev/null
20.07.2018
06:15:58

/dev/null
20.07.2018
06:16:19
не исправил… до этого не было ретюрна просто фатал, не поправил

Zhenja
20.07.2018
06:19:21
для картинки _thumb_300x300 размер 300*400?

/dev/null
20.07.2018
06:20:24
Косяк
должен быть 300x300

Zhenja
20.07.2018
06:21:17
я б вынес все это в отдельную функцию, на вход которой подается размеры и она делает одну картинку нужного размера

/dev/null
20.07.2018
06:21:56

Zhenja
20.07.2018
06:28:20
func (img *Image) ResizeOneImg(w, h int) (string, error) {
fname := filepath.Join(img.Path, img.Id, fmt.Sprintf("_thumb_%dx%d", w, h)+img.Name+img.Type)
src := openImage(fname)
dst := image.NewRGBA(image.Rect(0, 0, w, h))
draw.ApproxBiLinear.Scale(dst, dst.Bounds(), src, src.Bounds(), draw.Over, nil)
dstFile, err := os.Create(fname)
if err != nil {
return "", err
}
defer dstFile.Close()
if err = jpeg.Encode(dstFile, dst, nil); err != nil {
return "", err
}
return fname, nil
}
ps. не проверял, но надеюсь идея понятна

Google

/dev/null
20.07.2018
06:45:54
func (img *Image) ResizeOneImg(w, h int) (string, error) {
fname := filepath.Join(img.Path, img.Id, fmt.Sprintf("_thumb_%dx%d", w, h)+img.Name+img.Type)
src := openImage(fname)
dst := image.NewRGBA(image.Rect(0, 0, w, h))
draw.ApproxBiLinear.Scale(dst, dst.Bounds(), src, src.Bounds(), draw.Over, nil)
dstFile, err := os.Create(fname)
if err != nil {
return "", err
}
defer dstFile.Close()
if err = jpeg.Encode(dstFile, dst, nil); err != nil {
return "", err
}
return fname, nil
}
К примеру прохожусь в цикле три раза по этой функции (так как нужно 3 файла)… а как бы вы потом собрали все filename и filepath в JSON?

Zhenja
20.07.2018
07:01:23
for ... {
f[fmt.Sprintf("filePath_%dx%d", h, w)], err = img.ResizeOneImg(w, h)
if err != nil {
return
}
}
https://play.golang.org/p/bKT7ECaAhjy
Коллеги, подскажите как тут получить адрес строки-результата? Еще одну переменную вводить?

John
20.07.2018
09:37:30

Zhenja
20.07.2018
09:39:05
потому что результат функции еще нигде не сохранился и адреса у него еще нет?

Мерлин
20.07.2018
09:48:06

Zhenja
20.07.2018
09:49:08
спасибо

Admin
ERROR: S client not available

Vadim
20.07.2018
09:59:02
Когда уже сделают нормальную библиотеку графиков для го?(

Andrei
20.07.2018
10:01:09

Vadim
20.07.2018
10:03:41

Aleksandr
20.07.2018
10:03:59

Andrei
20.07.2018
10:04:27

Vadim
20.07.2018
10:04:59

Aleksandr
20.07.2018
10:05:29
потому что ученые не программисты

Andrei
20.07.2018
10:05:50
Почему?
потому что он медленный, а коменсировать это сишными либами не получится, так как cgo еще медленнее

Vadim
20.07.2018
10:06:07

Andrei
20.07.2018
10:06:40
на го отстутствует обощенное програмирование, то есть на то, что в питоне ты потратишь 5 строк, в го может вылится в сотни

Google

Aleksandr
20.07.2018
10:07:19

Vadim
20.07.2018
10:07:21

Andrei
20.07.2018
10:07:40
то есть с одной стороны он слишком медленный, чтобы заменить модули на си и фортране, с другой он слишком деревянный, чтобы заменить питон

Olzhas
20.07.2018
10:07:46
На пхп писать надо

Oleg
20.07.2018
10:07:55
толсто

Aleksandr
20.07.2018
10:08:36

Olzhas
20.07.2018
10:09:09
Это не шутка!

Oleg
20.07.2018
10:09:25

Andrei
20.07.2018
10:10:01
от питона там только биндинги

Oleg
20.07.2018
10:10:19

Vadim
20.07.2018
10:10:45

Andrei
20.07.2018
10:10:50

Oleg
20.07.2018
10:11:51

Andrei
20.07.2018
10:12:43

Olzhas
20.07.2018
10:14:19
Интересно, когда все на жс начнут писать?

Aleksandr
20.07.2018
10:14:49
приходи уже подготовленным