![](/img/trans.png)
[英]Rails: ActionView::Template::Error - undefined method 'comment'
[英]Rails jbuilder error: ActionView::Template::Error (undefined method
我有一个 Rails 6 应用程序,我们正在使用 jbuilder 来定义 JSON 响应的形状。
最近,我开始收到以下错误:
ActionView::Template::Error (undefined method `empty?' for #<Account:0x0000000116743030>):
堆栈跟踪指向 jbuilder 文件中的这个块:
json.account do
json.call(@account, *Account::APP_FIELDS)
json.logo_url @account.logo
end
如果我注释掉块内的两行,错误就会消失。 如果我删除其中一行并保留另一行,则会返回错误。 堆栈跟踪只是将我指向块的第一行。
这是怎么回事? 我该如何解决?
弄清楚了!
在 jbuilder 文件的较高位置,包含一个添加相同account
密钥的部分。 这引起了某种名称冲突。
我通过使用我的重命名accountt
临时测试偶然发现了这一点,突然它起作用了。 那时我才意识到是名称冲突导致了这个问题。 我没有看到它,因为它在不同的文件中并且错误消息令人困惑。 如果您的 jbuilder 文件很复杂并且您认为自己遇到了同样的问题,那么这是一种简单的测试方法。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.