Size: a a a

2020 March 11

PT

Pax au Telemanus in Go-go!
Александр Толмачёв
А у меня баг прилетел, что если убить контейнер с базой, то бэкенд перестаёт работать
Это норм кстати баг.переподключаться к базе это хорошо
источник

АТ

Александр Толмачёв in Go-go!
docker service rm main_db, удачи в переподключении :)
источник

PT

Pax au Telemanus in Go-go!
By fire be purged
источник

x

x-foby in Go-go!
Stepan Neretin
Привет, Ребят. Впервый раз пишу чёт такое адекватное относительно на гоу( апи сервис, который решает юзера, вскоре будет авторизаровать)
Хочу спросить как вам архитектура? Знаю, что бредово для такого маленького проекта спрашивать про архитектуру, но все же.. Очень интересно как у вас в golang разбивают проект по "папкам "
Буду признателен за любую критику в сторону моего репозитория
Всем спасибо заранее
Вы когда код пишете, задавайтесь почаще вопросом: а зачем я это делаю?
Вот прям на каждую строчку.

Например, зачем выпишете вот так:
func checkRequestMethod(req http.Request, need string) bool {
 if req.Method != need {
   return false
 }
 return true
}


Если можно так:
func checkRequestMethod(req http.Request, need string) bool {
 return req.Method == need
}


И вот теперь, когда эта функция состоит из одной строки, можно задать следующий вопрос: а зачем она вообще?
Вы используете её вот так:
func (h RegisterHandler) ServeHTTP(w http.ResponseWriter, req *http.Request) {
 if checkRequestMethod(*req, "POST") {
   // логика хэндлера
 } else {
   // логика ошибки
 }
}


Почему бы не писать проще:
func (h RegisterHandler) ServeHTTP(w http.ResponseWriter, req *http.Request) {
   if req.Method != http.MethodPost {
       // логика ошибки
   }
   // логика хэндлера
}


Дальше одного файла лезть не стал.
Но как итог, вам надо в первую очередь не о расположении папочек в проекте переживать, а о том, что и как вы пишете.
источник

PT

Pax au Telemanus in Go-go!
Херню какую то написали заменять  логический наглдный иф на короткую непонятную запись это плохо
источник

PT

Pax au Telemanus in Go-go!
Компилятору все равно сколько у вас строчек
источник

x

x-foby in Go-go!
Не продолжайте, пожалуйста)
источник

PT

Pax au Telemanus in Go-go!
И вы
источник

АТ

Александр Толмачёв in Go-go!
Pax au Telemanus
Херню какую то написали заменять  логический наглдный иф на короткую непонятную запись это плохо
В ГОЛОС
источник

GC

Great Cornilio in Go-go!
ну нравится человеку печатать
источник

GC

Great Cornilio in Go-go!
что вы накинулись
источник

VC

Vasiliy Chekhov in Go-go!
Привет, есть опыт у кого работы с PayPal? Какие библиотеки юзали?
источник

/

/dev/null in Go-go!
Vasiliy Chekhov
Привет, есть опыт у кого работы с PayPal? Какие библиотеки юзали?
источник

/

/dev/null in Go-go!
Вообще как я вижу у них открытое API
https://developer.paypal.com/docs/api/overview/

Может лучше свою реализацию написать
источник

VC

Vasiliy Chekhov in Go-go!
да, походу придется свое писать.
источник

VC

Vasiliy Chekhov in Go-go!
вот такую штуку надо сделать.
источник

AZ

Artem Zheltak in Go-go!
Я для базы его использовал, но у нас просто система оплатил, пришёл хук на сайт, Деньги зачислены
источник

VC

Vasiliy Chekhov in Go-go!
Artem Zheltak
Я для базы его использовал, но у нас просто система оплатил, пришёл хук на сайт, Деньги зачислены
Ага, тоже подумал форк сделать.
У меня данные такие:
- LLC в США
- Деньги от покупателя идут продавцу(98%) и комиссия (2%) площадке.

Хотел юзать stripe, но с Россией не работает полноценно. Ещё в сторону WePay смотрю...
источник

а

а кто это in Go-go!
x-foby
Вы когда код пишете, задавайтесь почаще вопросом: а зачем я это делаю?
Вот прям на каждую строчку.

Например, зачем выпишете вот так:
func checkRequestMethod(req http.Request, need string) bool {
 if req.Method != need {
   return false
 }
 return true
}


Если можно так:
func checkRequestMethod(req http.Request, need string) bool {
 return req.Method == need
}


И вот теперь, когда эта функция состоит из одной строки, можно задать следующий вопрос: а зачем она вообще?
Вы используете её вот так:
func (h RegisterHandler) ServeHTTP(w http.ResponseWriter, req *http.Request) {
 if checkRequestMethod(*req, "POST") {
   // логика хэндлера
 } else {
   // логика ошибки
 }
}


Почему бы не писать проще:
func (h RegisterHandler) ServeHTTP(w http.ResponseWriter, req *http.Request) {
   if req.Method != http.MethodPost {
       // логика ошибки
   }
   // логика хэндлера
}


Дальше одного файла лезть не стал.
Но как итог, вам надо в первую очередь не о расположении папочек в проекте переживать, а о том, что и как вы пишете.
этим роутер вообще должен заниматься
источник

АП

Александр Попов in Go-go!
хм
источник