更新函数抛出错误(rails)
update function throwing erro(rails)
我遇到一个问题,每当我调用更新函数时它都会抛出错误。我试图找到解决方案,但找不到,而且我无法理解错误。请告诉我代码有什么问题
从这个函数调用更新函数
def bookmark_request
data = params[:d]
request_bookmarked = Request.getRequest(data)
bookmarked_against_Request = Request.first
request_bookmarked_2 = request_bookmarked
bookmarked_against_Request_2 = bookmarked_against_Request
if bookmarked_against_Request_2[:favourites]
bookmarked_against_Request_2[:favourites] << bookmarked_against_Request[:id]
else
bookmarked_against_Request_2[:favourites] = Array.new
bookmarked_against_Request_2[:favourites] << bookmarked_against_Request[:id]
end
Request.updateRequest(bookmarked_against_Request , bookmarked_against_Request_2)
redirect_to :action => "active"
end
更新码是这个
def updateRequest(request,req_data)
if request.update(req_data)
request
end
end
我收到的错误是
**requests/bookmark_request
处的 NoMethodError
未定义方法“空?” Request:0x007f3fa44c59b0**
如果request.update(req_data)
总是出现错误
因为我没有 10 的声誉,所以我发布错误截图的链接
http://tinypic.com/r/whbiv7/8
update()
方法的参数应该是一个散列。但是你的 req_data
论点实际上变成了 Request
在这里:
def bookmark_request
bookmarked_against_Request = Request.first
...
bookmarked_against_Request_2 = bookmarked_against_Request
...
end
而Request
class没有empty?
方法。此外,如果根本没有请求,它可能会变成 nil
。
我遇到一个问题,每当我调用更新函数时它都会抛出错误。我试图找到解决方案,但找不到,而且我无法理解错误。请告诉我代码有什么问题
从这个函数调用更新函数
def bookmark_request
data = params[:d]
request_bookmarked = Request.getRequest(data)
bookmarked_against_Request = Request.first
request_bookmarked_2 = request_bookmarked
bookmarked_against_Request_2 = bookmarked_against_Request
if bookmarked_against_Request_2[:favourites]
bookmarked_against_Request_2[:favourites] << bookmarked_against_Request[:id]
else
bookmarked_against_Request_2[:favourites] = Array.new
bookmarked_against_Request_2[:favourites] << bookmarked_against_Request[:id]
end
Request.updateRequest(bookmarked_against_Request , bookmarked_against_Request_2)
redirect_to :action => "active"
end
更新码是这个
def updateRequest(request,req_data)
if request.update(req_data)
request
end
end
我收到的错误是
**requests/bookmark_request
处的 NoMethodError未定义方法“空?” Request:0x007f3fa44c59b0**
如果request.update(req_data)
总是出现错误因为我没有 10 的声誉,所以我发布错误截图的链接 http://tinypic.com/r/whbiv7/8
update()
方法的参数应该是一个散列。但是你的 req_data
论点实际上变成了 Request
在这里:
def bookmark_request
bookmarked_against_Request = Request.first
...
bookmarked_against_Request_2 = bookmarked_against_Request
...
end
而Request
class没有empty?
方法。此外,如果根本没有请求,它可能会变成 nil
。