0

我正在关注本教程 - http://communityguides.heroku.com/articles/9 -app/controllers/admin_controller.rb

使用以下代码块遇到“无法将 nil 转换为字符串”错误。

# freeze state 
@article.freezebody = @article.title + "\n\n" + @article.teaser + "\n\n" + @article.body + "\n\n" + @article.version + "\n\n" + @article.changelog 
@article.accepted = Time.now 

这是一个正则表达式问题吗?我什至不知道从哪里开始。

4

1 回答 1

2

您的一个或多个属性是nil,并且:

nil + ''

会给你你看到的异常。

要连接这些属性,减去任何可能为 nil 的属性(为便于阅读而缩短):

[@article.title, @article.teaster].compact.join("\n\n")

compactnil从数组中删除所有对象。

于 2012-11-25T23:11:51.913 回答