Size: a a a

2020 April 21

IK

Ilya Kaznacheev in Go-go!
Eduard Korolev
потому что тогда вызов r.HandleFunc("/", middleware.Authorize(appHandlers.HelloHandler)) превратиться в ад
Нет, эта строчка не изменится
источник

EK

Eduard Korolev in Go-go!
вот я про это и спрашиваю, как не меняя это передать туда коннешен
источник

IK

Ilya Kaznacheev in Go-go!
Просто у тебя будет что-то вроде appHandler := NewAppHandler(dbConn) до этого
источник

а

а кто это in Go-go!
я думаю appHandlers это пакет...
источник

IK

Ilya Kaznacheev in Go-go!
Ок
источник

EK

Eduard Korolev in Go-go!
да, appHandlerts это пакет
источник

IK

Ilya Kaznacheev in Go-go!
appHandler := appHandlers.NewAppHandler(dbConn)
источник

EK

Eduard Korolev in Go-go!
но там будет UserHandlers, ContentHandlers
источник

EK

Eduard Korolev in Go-go!
и т.д., такой способ единственный я и нашел
источник

EK

Eduard Korolev in Go-go!
только под каждый пакет получится конструктор
источник

а

а кто это in Go-go!
ну так поделите хендлеры на контроллеры
источник

EK

Eduard Korolev in Go-go!
хм 10 файлов в один засунуть?
источник

EK

Eduard Korolev in Go-go!
тогда будут толстые контроллеры))
источник

IK

Ilya Kaznacheev in Go-go!
Где NewAppHandler возвращает тебе структуру вида
type handler struct {
   dbConn *sql.DB
}

func (h *handler) HelloHandler(w http.ResponseWriter, r *http.Request) {
   h.dbConn.Select(…)
}
источник

IK

Ilya Kaznacheev in Go-go!
Ну и так далее
источник

IK

Ilya Kaznacheev in Go-go!
Eduard Korolev
только под каждый пакет получится конструктор
Да, конечно
источник

EK

Eduard Korolev in Go-go!
я понял, только на примере hello handler маленький, а в реальности там будет под несколько сотен строк и кучу методов
источник

IK

Ilya Kaznacheev in Go-go!
источник

IK

Ilya Kaznacheev in Go-go!
Советую вот это посмотреть для понимания
источник

D

DaySandBox in Go-go!
Message from Maxim deleted. Reason: external link (?)
источник