plantbook-gotmpl

command module
v0.0.0-...-4f9ceea Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 1, 2021 License: MIT Imports: 7 Imported by: 0

README

MIT license Go Report Card

plantbook-gotmpl

plantbook-gotmpl

Данный проект является попыыткой сделать фронтенд часть для микросервисного проекта plantbook. Исключительно в учебных целях.
1. Страница главная;
  • Название проекта;
  • Колличество растений, применил обычный скрипт для легкости и чтобы не перегружать приложение;
  • Растения, которые имеются в базе данных (Тут остается не закрыт вопрос с отображением изображений растений. В нашей базе данных массив, я этого не указал. Необходимо переделать);
2. Страница входа в систему;
  • Login;
  • Password;
  • Button (При нажатии рендерит с ввбидыми данными. Пока заглуша)
3. Страница 404;
  • Сообщение об ошибке
4. Редирект при вводе в форму;
  • Заглушка, json redirect

Ошибки

Был установлен локально Postgress у него был порт 5432. Удалил - заработало.
failed to connect to `host=localhost user=plantbook_admin database=plantbook_admin`: failed SASL auth
(expected AuthenticationSASLFinal message but received unexpected message)
Не запущен posgresql
failed to connect to `host=localhost user=plantbook_admin database=plantbook_admin`: dial error (dial
tcp 127.0.0.1:5432: connectex: No connection could be made because the target machine actively refused it.)

Взаимодействие с базой данных

Используется драйвер pgxpool

// Соединение с экземпляром Postgres - основная функция
func connect(ctx context.Context) *pgxpool.Pool {
	url := "postgres://plantbook_admin:mypassword@localhost:5432/plantbook_admin"
	dbpool, err := pgxpool.Connect(ctx, url)
	// dbpool, err := pgxpool.Connect(ctx, os.Getenv("DATABASE_URL"))
	if err != nil {
		log.Error("Couldn't connect to your database psql")
	}
	log.Info("Connect to your database psql")

	return dbpool
}

Но, чтобы инициализорвать эту функцию (базу данных), необходимо в начале каждой функции добавлять

func PlantsAll() ([]model.Plant, error) {

	ctx := context.Background()
	dbpool := connect(ctx)
	defer dbpool.Close()
....
	
}
иначе данные Вы не получите!

Консоль

Для эстетики добавил пакет log для красивого отображения логгов.

log "gopkg.in/inconshreveable/log15.v2"

SQL команды

	winpty docker exec -it 500 bash
	echo $PGDATA
	cd $PGDATA
	 psql -U plantbook_admin
	\l
    \dt
    select*from users;
    select id from users;
    ...

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
url := "postgres://plantbook_admin:mypassword@localhost:5432/plantbook_admin"
url := "postgres://plantbook_admin:mypassword@localhost:5432/plantbook_admin"

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL