应该有一种更好的方法来编写不会抛出NoMethodError的代码,我被卡住了。 我的堆栈跟踪
# NoMethodError · undefined method `account' for nil:NilClass
def email_talent_match_only_one(talent, match)
@talent = talent
@position = match.position
@account = match.position.account
if @account.present? and @talent.present?
# ...
end
答案 0 :(得分:3)
这是Ruby中相当常见的错误。当您尝试检索帐户时,var svgWidth = ...
var svgHeight = ...
var svgArea = svgWidth * svgHeight;
console.log("The area of the SVG is " + svgArea);
正在返回nil。然后,您正试图在导致错误的match.position
上致电account
。
如果需要这样做,您可能需要使用NilClass
语法或&.
方法返回try
,而不是抛出错误。
nil