beego模板值范围执行时,“content”不是结构类型的字段。

huangapple go评论78阅读模式
英文:

beego template value range executing "content" not a field of struct type

问题

在我的控制器中,我设置了以下数据:

c.Data["foos"] = foos

c.Data["user"] = user

所以,如果我在视图中询问用户的某个属性,一切都正常。

{{if .user.IsSuperUser}}
    <th>ID</th>
    <th>Username</th>
{{end}}

但是在:

<tbody>
{{range $foo := .foos}}
   <tr>
   {{if .user.IsSuperUser}}
      <td>xyz</td>
      <td>abc</td>
   {{end}}
...

myBeego:template: foo/foos.tpl:56:46: 执行"content"时出错
<.user.IsSuperUser>: user不是*models.Foo结构体类型的字段

我该如何处理这个问题?

感谢您的帮助,祝感恩节快乐。

英文:

in my controller i set the following data:

c.Data[&quot;foos&quot;] = foos

and

c.Data[&quot;user&quot;] = user

So if I ask some property from user in the view, all fine.

{{if .user.IsSuperUser}}
    &lt;th&gt;ID&lt;/th&gt;
    &lt;th&gt;Username&lt;/th&gt;
{{end}}

But in:

&lt;tbody&gt;
{{range $foo := .foos}}
   &lt;tr&gt;
   {{if .user.IsSuperUser}}
      &lt;td&gt;xyz&lt;/td&gt;
      &lt;td&gt;abc&lt;/td&gt;
   {{end}}
...

> myBeego:template: foo/foos.tpl:56:46: executing "content" at
> <.user.IsSuperUser>: user is not a field of struct type *models.Foo

How can I handle that?

Thanks for every help and happy Thanksgiving.

答案1

得分: 3

我找到了这个不错的链接:https://stackoverflow.com/questions/14800204/in-a-template-how-do-you-access-an-outer-scope-while-inside-of-a-with-or-rang?rq=1

{{with .Inner}}
  Outer: {{$.OuterValue}}
  Inner: {{.InnerValue}}
{{end}}

就是这样。 beego模板值范围执行时,“content”不是结构类型的字段。

英文:

I found this nice little link: https://stackoverflow.com/questions/14800204/in-a-template-how-do-you-access-an-outer-scope-while-inside-of-a-with-or-rang?rq=1

{{with .Inner}}
  Outer: {{$.OuterValue}}
  Inner: {{.InnerValue}}
{{end}}

That's it. beego模板值范围执行时,“content”不是结构类型的字段。

huangapple
  • 本文由 发表于 2015年11月27日 03:14:30
  • 转载请务必保留本文链接:https://go.coder-hub.com/33945624.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定