doujiku1028 2017-08-22 23:39
浏览 80
已采纳

Revel和golang导入太物理了吗?

just starting with go/revel. I copied the "examples/booking" app into "examples/booking2" directory so i could muck with it w/o impacting the original.

When I ran it I got weird results, in particular the initial data in the db seemed to be duplicated.

I tracked this down to the imports:

import "github.com/revel/examples/booking/app/models"

Once I changed "booking" to "booking2" in all the relevant imports things were fine. But my first thought is "why is an import path so physical?". I'm thinking that within the application there should be a way to relatively reference the app's various packages w/o having to reference the physical path where the app resides.

Is there a way to do that?

Not even sure if this is "go" thing, or a "revel" thing.

Thx.

  • 写回答

1条回答 默认 最新

  • doucan2102 2017-08-23 00:02
    关注

    The import path maps directly to the filesystem path, relative to $GOPATH/src/.

    https://golang.org/doc/code.html#ImportPaths

    It seems that you can do a relative import like this:

    ../other-pkg
    

    But it's not idiomatic or recommended.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?