@gogolang

Страница 242 из 1630
Мерлин
30.04.2017
20:20:57
migrations, routing, sessions, mvc, loggers
Значит комбайн Посмотри в сторону buffalo

Alexander
30.04.2017
20:21:29
Я слышал три основных beego,buffalo,grizly

вы с ними со всеми работали?

Мерлин
30.04.2017
20:22:33
Google
Мерлин
30.04.2017
20:22:53
Но не плотно

Alexey
30.04.2017
20:48:33
Я тоже этой темой интересуюсь. Большое всего звездочек(10k) на гитхабе у beego. Еще я присматриваюсь к go-json-rest (2.8k). https://github.com/ant0ine/go-json-rest Как я понимаю это что-то типа Sinatra из Ruby, если искать аналоги... Т.е. очень простой скелетон с роутером и Json, к которому уже по желанию надо прикручивать модули. В реадми описано как прикрутить на этотот скелетон JWT, для сессий, ORM. А это уже 90% задач закроет :) Плюс подхода, что приложение можно распилить на отдельные апишки, и деплоить их отдельно, это будет не монолит. Штука типа beego все таки больше сконяет к тому, чтобы писать монилит. Что наверное не go way...

Aleksey
01.05.2017
01:50:27
Кто-нибудь гориллу использует?

Мерлин
01.05.2017
07:03:28
go-cleanarch/README.md at master · roblaszczak/go-cleanarch https://github.com/roblaszczak/go-cleanarch/blob/master/README.md

Мерлин
01.05.2017
17:32:26
Aleksey
01.05.2017
20:54:52
Как строите структуру проекта бинарник и рядом папка с html/js/css файлами от шаблона располагаются?

Slava
01.05.2017
22:27:26
что ты имеешь ввиду под бинарником?

исполняемый пакет или реальный бинарный файл?

Aleksey
01.05.2017
23:23:16
Google
Kirill
01.05.2017
23:24:22
Как строите структуру проекта бинарник и рядом папка с html/js/css файлами от шаблона располагаются?
В зависимости от требований. Можно встроить, а можно рядом положить.

Aleksey
01.05.2017
23:36:45
В зависимости от требований. Можно встроить, а можно рядом положить.
А какой утилитой встраиваешь? Там же из коробки нельзя запихивать html/js файлы

Мерлин
02.05.2017
06:34:59
А какой утилитой встраиваешь? Там же из коробки нельзя запихивать html/js файлы
Я вот эту пользовал пару раз https://github.com/shurcooL/vfsgen/blob/master/README.md

Был ещё rice, но он сдох

Alyona
02.05.2017
07:56:32
Привет! Направление разработки индустриального интернета вещей ищет разработчиков Rust\Go. Работа в офисе на м. Павелецкая. Для опытных разработчиков з/п 200+ т.р. Технические скилы: • Отличные знания TCP/IP стека • Отличные знания Go или Rust • Опыт работы с high load системами Будет огромным плюсом: • Опыт построение приложений, которые держат сотни тысяч постоянных коннектов • Опыт разработки стораджей или баз данных • Понимание CAP • Живые проекты на github #вакансия #москва #backend #go #rust

Alexey
02.05.2017
08:19:29
Привет, Алёна. :D

Anton
02.05.2017
08:29:31
где-то я уже это видел)))))

Vlad
02.05.2017
09:12:09
Всем привет

Есть следующий код: ts := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { if r.Method != get { t.Errorf("Invalid method %s", r.Method) } if r.URL.Path != "/projects/"+string(pid)+".json" { t.Errorf("Invalid resource path %s", r.URL.Path) } if r.URL.Query().Get("include") != "trackers" { t.Error("Missed include query param") } w.Write(readTestFile(t, projectFile)) }))

Вопрос: откуда сетится request?

Мне нужно покрыть тестами одну штуку, которая "ходит" по сети. Не совем понятно, кто и когда засетит значения в r * Request

Mike
02.05.2017
09:15:40
ааааа

выдели код плиз

`

три бэктика в начале, три в конце

ну это на будущее

вообще вот: https://elithrar.github.io/article/testing-http-handlers-go/

развлекайся

Vlad
02.05.2017
09:17:25
Паралельно читаю эту статью

Google
Vlad
02.05.2017
09:17:27
Спасибо

Я давно с го не работал,а нужно знакомому помочь

Вот,вспомниаю

Почитал я статейки. Но все же мне нужнен ( по некоторым причинам) именно такой вариант ts := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { if r.Method != get { t.Errorf("Invalid method %s", r.Method) } if r.URL.Path != "/projects/"+string(pid)+".json" { t.Errorf("Invalid resource path %s", r.URL.Path) } if r.URL.Query().Get("include") != "trackers" { t.Error("Missed include query param") } w.Write(readTestFile(t, projectFile)) })) Не подскажите, откуда вообще сетится r?

Илья
02.05.2017
10:37:18
r - это запрос, который вы отправляете на сервер

https://golang.org/pkg/net/http/httptest/#Server

res, err := http.Get(ts.URL) - тут отправляется get запрос, который будет обработан вашим http.HandlerFunc(

Vlad
02.05.2017
10:49:47
Сударь, увы, внутри моего теста НИГДЕ не вызыается http.Get, что и повергло меня в замешательство

Mike
02.05.2017
10:50:30
так потому что у тебя создается сервер

из твоего кода

и тесты на него

а теперь надо руками отправить на него запрос

потому что тесты у него только после запросов

у тебя же видишь ему коллбэк передается, че делать

ты увеен, что тебе сейчас про го стоит вспоминать, а не про то, как http вообще работает?

Vlad
02.05.2017
10:54:09
Уважаемый

Mike
02.05.2017
10:54:51
у тебя в коде написано буквально "сделай мне тестовый сервер из вот такого обработчика запросов и назови его ts", все

Vlad
02.05.2017
10:55:13
Чудесно, спасибо, что обьяснил

Я-таки нашел место, откуда это все, возможно, вызывается.

Илья
02.05.2017
10:56:29
если в этом месте не фигурирует ts.URL, то работа не будет гарантирована :)

Google
Vlad
02.05.2017
10:57:19
p, err := r.Project(context.Background(), entities.Tracker{ Credentials: testCreds, URL: ts.URL, Type: redmineType, }, pid)

Mike
02.05.2017
10:57:32
ну так, после того, как ты тестовый сервер сделал, надо теперь писать тесты, например 1) сделать на него запрос гет по урлу, и убедиться, что результат совпадает с тем, что ты ждешь 2) сделать пост по урлу и убедиться, что результат правильно зависит от параметров 3) любой другой пример но эти тесты тебе придется написать, а не ждать, что магическое присваивание севера переменной начнет долбить на сервер именно те запросы, которые ты хочешь

Vlad
02.05.2017
11:00:28
Таки пройдя по длинной цепочке вызовов, нашел вот это resp, err := opts.httpClient.Do(req.WithContext(opts.ctx))

Бинго.

Павел
02.05.2017
12:23:40
здравствуйте, дорогие

и уважаемые участники

:)

Мерлин
02.05.2017
12:25:37
Добрый день

Олег
02.05.2017
12:26:09
:)
ты бы ник сменил, а то все админы уже банхамеры достали

?

Павел
02.05.2017
12:29:43
Сначала бы вылечить паранойю, ребят. На самом деле, меня зовут Павел. У меня появился вопрос, на который я не нашел в сети ответа и стал искать вас. И очень рад, что нашел.

Илья
02.05.2017
12:31:38
ну так не томите, Павел, в чем же вопрос?

Олег
02.05.2017
12:31:49
Да троль походу

Олег
02.05.2017
12:32:10
Убейте Павла

Павел
02.05.2017
12:32:47
Вопрос по gogland, но сейчас я убегаю. Удивлен, что бывают проблемы с троллями. О_О Ребят, вы чего? Оо

Alex
02.05.2017
12:32:55
Че за павел

Mike
02.05.2017
12:33:11
павел, будь проще

Alex
02.05.2017
12:33:17
павел уходи

Google
Мерлин
02.05.2017
12:33:24
Господа, у нас работает презумпция невиновности

Mike
02.05.2017
12:33:26
а то звучишь как 60-летний которому сегодня интернет показали

Олег
02.05.2017
12:33:30
павел, бан:D

??

Alex
02.05.2017
12:33:40
А, я не могу убить павла

Alex
02.05.2017
12:33:45
Пойду убью карину

Павел
02.05.2017
12:33:47
Сменил

Alex
02.05.2017
12:42:51
Добро пожаловать в чат русскоязычного комьюнити языка программирования Go! Здесь не любят и активно карают за: — оскорбления; — nsfw контент; — флуд, флейм и спам; — избыток оффтоп тем; Прежде чем задавать свои ответы, убедитесь, что: — вы загуглили свою проблему — вы поискали на официальном сайте языка https://golang.org/help/ Не просите других отлаживать ваш неработающий код без подсказки о проблемах, которые нужно отыскать. Отправив сотни строк и говоря "не работает", вы будете проигнорированы. Отправив десяток строк кода и сказав "после строки 7 я ожидаю X, но приходит Y" - значительно вероятнее получить ответ. Не поддавайтесь соблазну завершить свой запрос бессмысленными вопросами вида: "Не поможет ли мне кто-нибудь?" или "Есть ли вообще ответ?" Во-первых, если вы хоть сколько-нибудь компетентно описали свою проблему, подобные дополнительные вопросы, как минимум, излишни. Во-вторых, поскольку они излишни, людям они кажутся надоедливыми — и в ответ их так и подбивает написать логически безукоризненную отписку типа: "Да, помочь вам можно" или "Нет, вам уже ничем не поможешь". Как правильно спрашивать: http://segfault.kiev.ua/smart-questions-ru.html#code Список всякой всячины: https://github.com/avelino/awesome-go Ништяки: https://github.com/golang/go/wiki/Projects Сайт комьюнити: http://4gophers.ru/ Список проектов, которым нужны контрибьютеры: https://github.com/ninedraft/gocryforhelp Приятно провести время! :3 #правила #rules #полезняшки #чаво
Сюда можно еще дописать вот эту ссылку: http://neprivet.ru

Karina
02.05.2017
12:58:37
Хэй, ребята. S7 Airlines устраивает хакатон в Москве, в Парке Горького. Призовой фонд 600 000 руб и еще возможность трудоустройства в S7 Group или заключение контракта с компанией S7 Airlines. Участие бесплатное. Если по результатам заочного этапа ваше решение будет отвечать критериям отбора, то вы будете приглашены на финальный этап в Москву, организаторы оплатят перелет. Регистрация: https://goo.gl/0Lhc2k

Mike
02.05.2017
12:59:56
и тут блокчейн...

а если я знаю решение для 3 за 15 баксов, которое умеет ВСЕ, что может теоретически уметь чатбот, это можно засчитать за решение? важен же результат =)

Karina
02.05.2017
13:01:52
регистрируйтесь, представляйте свое решение и компетентные люди оценят его)

а вообще

https://t.me/s7hackathon

Mike
02.05.2017
13:04:09
ну я говорю, решение — купить чатбот платформу, 15 баксов стоит, есть бэкенд, где можно активные чаты между саппортами раскидывать, саппорты могут чаты на других переводить (например, технических саппортов или финансовых, в зависимости от вопроса), автоматическое раскидывание чатов по свободным саппортам и т.п. Смысл это перепиливать заново?

Страница 242 из 1630