2012-04-22 55 views
0

我使用LinkedIn宝石拉个人资料信息的回报率3破折号属性名没有得到NoM​​ethodError

一切正常,除了当我到达名称中带有短划线的财产时。

<%=position.title %>正确显示,但是<%= position.start-date %>返回Users#show - undefined method start

我试过不同的操作,如“startDate”,“start_date”,“开始日期”周围的引号,但都没有工作。

有没有适当的方法来逃避财产名称中的破折号/连字符?

+0

这是我的错。我有一个老版本的宝石。 – 2012-04-27 16:40:39

回答

0

ERB中的表达式将被解析为从对位置对象的start()方法的调用结果中减去日期变量的值。连字符在Ruby中的标识符中无效。

我对LinkedIn gem建议解决方案不够熟悉,除了说因为它基于XML API,您应该寻找一种手动从标签对中提取数据的方法。大多数类似的宝石提供这种方法。另外,这是使用IRB作为探索工具的一个很好的例子:启动IRB会话并查看当您调用position.methods时发生的情况,当然在正确创建位置变量之后。我的猜测是你会在列表中看到一些建议答案的东西。