
Alexander
07.09.2017
09:29:46
Есть одна структура, с данными с поста. Есть другая структура, модели данных. Как заполнить структуру модели данных данными из структуры поста?

Daniel
07.09.2017
09:30:02
вручную
написать заполнятель

Mush
07.09.2017
09:32:01

Google

Mush
07.09.2017
09:32:28
Сначала в жсон потом из жсона в новую структуру
Но это конечно совсем не оптимально )

Alexander
07.09.2017
09:33:03
тоже вариант

Daniel
07.09.2017
09:34:46
очень херовый
зачем?

Alexander
07.09.2017
09:35:19
ну да. Перебор подконтрольнее

Vasily Romanov
07.09.2017
09:35:41
А имена послей там соответтсвуют друг другу ?

Alexander
07.09.2017
09:35:55
пока да )

Vasily Romanov
07.09.2017
09:38:56
Можно через рефлект
Будет медленее чем руками присваивать
Но меньше возьни
А если имена полей начну различаться - можно через struct tags упоминание делать
Это если таких сиутаций будет много и каждый раз влом писать

Google

Vasily Romanov
07.09.2017
09:39:44
Если одна - то конечно руками
Если всё же рефлектом будет удобно и хочется скорость - добро пожаловать в чудный мир кодогенерации

Daniel
07.09.2017
09:45:50
не надо через рефлект
пожалуйста

Ilya
07.09.2017
09:46:27
надо )

Daniel
07.09.2017
09:51:15
никогда не надо

Andrew
07.09.2017
10:04:38

Daniel
07.09.2017
10:05:23
что - почему? потому, что нет необходимости. потому, что это очень сильное колдунство, от которого гниль расползается по всему коду

Andrew
07.09.2017
10:05:57

Daniel
07.09.2017
10:06:50
там без него никак, понятное дело. но это от убогости нашей системы типов, а не от того, что так надо

Kirill
07.09.2017
10:08:03
не надо через рефлект
А если функция должна работать с различными типами? Ну т.е. допустим принимает название таблицы в БД, а возвращает стракт нужного типа?

Vasily Romanov
07.09.2017
10:08:13
в половине случаев без него никак

Vladislav
07.09.2017
10:08:14

Vasily Romanov
07.09.2017
10:08:37
да, конечно можно получить говнокод на выходе который будет рабоатть со скрипом и грузить сильно всё
но это не зхначит что теперь нормальынй инструмент надо выкинуть
вот в сишке можно вообще легко в голову себе выстрелить, ну и что? никто же не викинул её вот уже 5-й десятко лет

Ilya
07.09.2017
10:11:59

Andrew
07.09.2017
10:13:19

Daniel
07.09.2017
10:14:23

Google

Илья
07.09.2017
10:14:49

Kirill
07.09.2017
10:15:27
делать через интерфейсы
Это понятно, внутри-то надо как-то тип определять чтобы создать нужный стракт. Делать огомный свитч?
Ну т.е. условно у нас 100-150 таблиц в БД
Свитч на 150 кейсов?

Daniel
07.09.2017
10:18:41
я вот понять не могу - это под какую же задачу-то?

Vasily Romanov
07.09.2017
10:19:48
перекладывание данных из формы (структура ) в модель ( другая структура )

Daniel
07.09.2017
10:20:44
перкладыване данных делается перекладывателем данных. до десятка полей его можно и нужно писать вручную, потом следует использовать кодогенерацию

Kirill
07.09.2017
10:23:59
я вот про это не понимаю - зачем
Собирать мапу сущностей из БД. Алгоритм сбора мапы по сути один для всех таблиц в БД - две строки и два ключа для джойна. Я лазил в sqlx, там подобные вещи рефлексией делают, у меня есть возможность сделать через свитч т.к. кол-во таблиц конечное и я все их знаю

Ivan
07.09.2017
10:27:37
Киньте ссылкой, как 1.9 на debian воткнуть

Daniel
07.09.2017
10:28:29

Alexander
07.09.2017
10:28:44

Ivan
07.09.2017
10:28:51
и компилить?

Kirill
07.09.2017
10:29:15

Alexander
07.09.2017
10:29:21
Не надо ничего компилить

Daniel
07.09.2017
10:29:41

Alexander
07.09.2017
10:29:49

Kirill
07.09.2017
10:31:30
ну я пока не понимаю, при чем тут мапа
Ну как, нужно экспортнуть сущности из БД с их зависимостями. Можно выбрать всё и загрузить в память и маппить уже там, а можно сделать функцию которая нужную сущность сама дополнит зависимостями

Daniel
07.09.2017
10:31:55
не понимаю
вот не понимаю, правда

Google

Mike
07.09.2017
10:35:05

Kirill
07.09.2017
10:35:29

Mike
07.09.2017
10:35:56
В структуре добавить связи?
Ну как в обычных орм типа

Nik
07.09.2017
10:36:16
А как узнать длинну файла, не прогружая его полностью? есть какойнить метод на файлы в os?

Kirill
07.09.2017
10:36:46
В структуре добавить связи?
Ок, мы выберем все запросом из БД с джойном каким-нибудь sqlx, а под капотом там будет рефлексия. Это имелось в виду?

Michael
07.09.2017
10:36:48
кол-во байт с os Stats

Mike
07.09.2017
10:37:43

Nik
07.09.2017
10:37:54

Kirill
07.09.2017
10:40:59

Admin
ERROR: S client not available

Alexander
07.09.2017
10:50:24
Спасибо, Прояснилось )

/dev/null
07.09.2017
10:57:55

Ilya
07.09.2017
10:58:37

/dev/null
07.09.2017
10:58:37

Ilya
07.09.2017
10:59:00
мож там кто с пьяну поля дропнул

Vasily Romanov
07.09.2017
10:59:01
а

/dev/null
07.09.2017
10:59:15

Vasily Romanov
07.09.2017
10:59:27
инсерт наверное в случае дропа полей будет меньшей проблемой :)

/dev/null
07.09.2017
11:00:47

Google

Mike
07.09.2017
11:00:52
вооще по хорошему проверять бы надо что база отдала.
Я про другое, вот есть у тебя моделька User, у нее есть поле Friends, которое на самом деле подтягивается из таблички User джойном с табличкой Friends где айдишники пользователя и его друзей написаны, логику подтягивания пишешь сам, проверяй обпроверяйся, главное что связи ты так хранишь

Илья
07.09.2017
11:01:34

Roman ?
07.09.2017
11:01:54
Что можно почитать про применение go на практике?
Не совсем понятно что и как организовывать.

Vasily Romanov
07.09.2017
11:02:48
"что и как" можно арзвернуть подробнее 7
организация проекта, кода, делой, мониторинг - что именно ?

/dev/null
07.09.2017
11:03:05

Roman ?
07.09.2017
11:03:30

Илья
07.09.2017
11:04:23
спасибо
ну и по моей практике, обкладывай всё таймингами, когда нибудь захочется что-то ускорить, будет понятно куда копать :)

Alexander
07.09.2017
11:04:56
Обычно зхочется ускорить все и удалить тайминги

/dev/null
07.09.2017
11:06:19

Илья
07.09.2017
11:07:34
у меня свои шампуры, но для gin можно поискать примеры
https://github.com/Massad/gin-boilerplate

/dev/null
07.09.2017
11:08:51

⏺
07.09.2017
11:55:08
тут есть криптоманьяки? кто нибудь объяснит почему супершифрованный телеграм делает свои заметки telegraph через голый http, и с десктоп приложения переходить по таким ссылком это вообще зашквар

Andrew
07.09.2017
11:55:43

⏺
07.09.2017
11:56:03
хотя бы https:// для приличия врубили бы

Andrew
07.09.2017
11:56:06
Телеграм может и шифрованный, а телеграф - нет.

⏺
07.09.2017
11:56:14
иначе mitm и прочее все

Ilya
07.09.2017
11:56:23

⏺
07.09.2017
11:57:15
навверное ты везде используешь http ;)
он ведь даже быстрее