嘿 我在SessionsController中定义了以下方法来签署某人:
def destroy
current_user.update_attribute(:signed_in => false) if record.respond_to?(signed_in?)
signed_in = signed_in?(resource_name)
sign_out_and_redirect(resource_name)
set_flash_message :notice, :signed_out if signed_in
end
但我总是得到这个错误:
undefined local variable or method `record' for #<Devise::SessionsController:0xbcd9780>
我觉得record.respond_to?尝试访问ActiveRecord但不能。我该怎么办?
答案 0 :(得分:0)
您可以使用try方法。
current_user.try("signed_in=", false); current_user.save