beego没有找到与蜜蜂运行的布局tpl文件

时间:2016-05-04 21:32:16

标签: go beego

我已经使用beego在golang中构建了一个基于布局的基本网站,我将我的页面布局拆分为一个名为views/_layout.tpl的文件,并从控制器中将其引用如下。

func (c *BuyerController) Get() {
    ...
    c.Layout = "_layout.tpl"
    c.TplName = "buyers.tpl"
}

布局中间有所需的行:

    {{.LayoutContent}}

奇怪的是,当我使用IDEA / IntelliJ运行Web服务器时,它在浏览器中渲染得很好,但是当我使用bee run从控制台运行它时,布局文件中的所有html都丢失了,只显示buyers.tpl的内容。

我运行已编译应用程序的每个版本,同样的情况发生,IntelliJ构建的版本和bee run构建的版本不会。

据我所知,我已经关注http://beego.me/docs/mvc/view/view.md#layout-design

任何想法,我做错了什么,或任何线索如何解决?感谢。

1 个答案:

答案 0 :(得分:1)

GOPATH。再次。典型的我发布了赏金然后及时弄清楚了吗?

IntelliJ在GOPATH

中保留了自己的.idea/*.iml信息副本
<orderEntry type="library" name="GOPATH &lt;web&gt;" level="project" />

我正在运行gvm来管理go版本,为了将软件包安装在全球正确的位置,我的go路径如下:

$ echo $GOPATH
/home/tim/.gvm/pkgsets/go1.4.3/global

这意味着每次切换版本时我都必须移动我的src。为了解决这个问题,我已经使用gvm linkthis将我的src符号链接到gvm文件夹中,以便我的源代码在GOPATH中,因为我希望找到它。这样做的缺点是,在点击cd之前我必须$GOPATH/src/project/bee run而不是从真实位置运行它(这就是我所做的)。没有它,它会找到.go文件,但不会找到布局。我不是百分之百确定为什么,但它有一定意义。

似乎很多牦牛剃须让它全部工作所以也许我错过了什么?