玉鬼的财产
模板:
p= user
输出:
<p>{ admin: "true", human: "Foo Bar" }</p>
(在其他一些通常不被用户看到但用于渲染布局的不同部分(取决于各种因素)的其他东西之中)
模板:
p= user.human
输出:
<p>Foo Bar</p>
如预期的那样。 但是,模板:
p= user.admin
输出:
<p></p>
我不知道这怎么可能。 当我输出整个对象时,属性就在那里,但是当我尝试输出那个属性的时候它就消失了。
我也尝试使用user['admin']
而不是user.admin
,但是这也不起作用。
第一个问题:这是怎么发生的? 第二个问题:我该如何解决?
更新1:模式p #{user.admin}
具有相同的效果,并且p= user.admin.toString()
导致声明'user.admin' is not defined
的500错误'user.admin' is not defined
。 此外, JSON.stringify(user.admin)
也会导致空p标记(如在p= user.admin
和p #{user.admin}
)
更新2: p= JSON.stringify(user)
确实输出'admin'属性: {"admin":"true","human":"Foo Bar"}
但是迭代each value,key in user
,输出'admin'属性。 在这种情况下,输出非常长,因为它包含了一堆函数和其他东西,但是我用ctrl + f来search输出并找不到'admin'。
这可能是因为admin的值被解释为布尔值。 有些事情要尝试:
p #{user.admin}
要么
p= user.admin.toString()
请尝试以下
each value, key in user p #{value} [#{key}]
“pipe理”得到输出吗?
好的,这是什么错误:
我正在检索具有“admin”属性集的Mongoose对象,但Schema实际上并没有真正指定“admin”属性。 我不太确定Jade是如何挑选它的,但是Mongoose显然对“pipe理员”属性是什么以及如何处理这个问题感到非常困惑。
解决scheme是简单地添加'pipe理':'string'我的mongoose.Schema对象。
感谢戴夫和朱利安国王对你的帮助。 我已经提出了你的两个答案,因为他们确实帮助我得出了这个结论(以及你的意见,但是你没有得到那些我害怕的代表)。