加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – Rails 3中的字符串连接

发布时间:2020-12-17 04:34:02 所属栏目:百科 来源:网络整理
导读:我想知道为什么会这样:如果在加号和下一个字符串之间有空格,Ruby会连接两个字符串.但如果没有空间,它是否适用于一些一元运算符? params['controller'].to_s + '/'# = "posts/"params['controller'].to_s +'/'# = NoMethodError: undefined method `+@' for
我想知道为什么会这样:如果在加号和下一个字符串之间有空格,Ruby会连接两个字符串.但如果没有空间,它是否适用于一些一元运算符?
params['controller'].to_s + '/'
# => "posts/"

params['controller'].to_s +'/'
# => NoMethodError: undefined method `+@' for "/":String

解决方法

解析器将’/’解释为to_s方法调用的第一个参数.它将这两个陈述视为等同:
> params['controller'].to_s +'/'
# NoMethodError: undefined method `+@' for "/":String

> params['controller'].to_s(+'/')
# NoMethodError: undefined method `+@' for "/":String

如果在to_s方法调用结束时明确包含括号,则问题就会消失:

> params['controller'].to_s() +'/'
=> "posts/"

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读