Ревел и голанг импортируют слишком физически?
Только начинается с go/revel. Я скопировал приложение "examples/booking" в каталог "examples/booking2", чтобы можно было с ним справиться, не влияя на оригинал.
Когда я запустил его, я получил странные результаты, в частности, исходные данные в БД, казалось, были дублированы.
Я отследил это до импорта:
import "github.com/revel/examples/booking/app/models"
Как только я изменил "booking" на "booking2", все импортные операции были в порядке. Но моя первая мысль: "Почему путь импорта такой физический?". Я думаю, что в приложении должен быть способ относительно ссылки на различные пакеты приложения без необходимости указывать физический путь, в котором находится приложение.
Есть способ сделать это?
Даже не уверен, что это "пошло" или "упиваться".
Спасибо.
1 ответ
Путь импорта отображается непосредственно на путь файловой системы, относительно $GOPATH/src/
,
https://golang.org/doc/code.html
Кажется, что вы можете сделать относительный импорт следующим образом:
../other-pkg