Задать вопрос
@vGrabko99
html, css, js, php, golang, mysql

Почему не видит функции в пакете?

Вот код main.go
package main

import (
	"generais/kontroller"
	"github.com/julienschmidt/httprouter"
	"log"
	"net/http"
)

func main() {
	router := httprouter.New()

	router.GET("/", kontroller.formEcho)
	router.POST("/form_handler", kontroller.formPost)

	log.Fatal(http.ListenAndServe(":8080", router))
}


Вот код контролера
package kontroller

import (
	"fmt"
	"github.com/julienschmidt/httprouter"
	"net/http"
)

func formEcho(w http.ResponseWriter, r *http.Request, _ httprouter.Params) {
	fmt.Fprint(w, "<html><body><form action='http://localhost:8080/form_handler' method='POST'><input type='text' name='some_input'></form></body></html>")
}

func formPost(w http.ResponseWriter, r *http.Request, ps httprouter.Params) {
	some_input := r.PostFormValue("some_input")
	fmt.Fprintf(w, "hello, %s!\n", some_input)
}


При компиляции говорит что не найдено
v-smerti@vsmerti-K8N:~/localhost/api/src/generais$ go run main.go
# command-line-arguments
./main.go:13: cannot refer to unexported name kontroller.formEcho
./main.go:13: undefined: kontroller.formEcho
./main.go:14: cannot refer to unexported name kontroller.formPost
./main.go:14: undefined: kontroller.formPost


Зарание спасибо
  • Вопрос задан
  • 669 просмотров
Подписаться 1 Оценить Комментировать
Решения вопроса 1
index0h
@index0h
PHP, Golang. https://github.com/index0h
Потому, что вы явно это запретили.

func formEcho(

func formPost(


Доступны только в рамках пакета. Если нужно в рамках всей системы - названия с Большой буквы
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы