如果它位于config/environment.rb
文件中,如何在下一句中正确删除尾随字符。
KEY = ENV['KEY'].delete "\r"
它会产生以下错误:
undefined method `delete' for nil:NilClass (NoMethodError)
它在IRB中运行良好,但在environment.rb
中运行不正常解决
Aptana Studio 3在最新更新后停止加载.bashrc。感谢Mladen和Mark的帮助。
答案 0 :(得分:4)
String#chop
返回删除了最后一个字符的字符串副本。并且它有一个对应的String#chop!
,它也会改变字符串。
但是,您的特定错误(未定义的方法'删除'为nil:NilClass)意味着ENV['KEY']
返回nil
,这当然不响应delete
消息。你可以试试
KEY = ENV['KEY'].to_s.delete "\r"
将其强制转换为字符串。 nil.to_s
返回空字符串,"".delete x
仍为""
。另一方面,如果ENV['KEY']
正确返回字符串,则与未包含to_s
的情况相比,不会发生任何不同。