我使用設計上rails5確認電子郵件地址登錄。一切正常,直到我點擊確認鏈接。那麼就說明我這個錯誤:紅寶石軌錯誤電子郵件中色器件
NameError in Devise::ConfirmationsController#show
undefined local variable or method `signin' for #< Class:0x007fb1cbe56b48>
這是導致該錯誤代碼:
conditions = warden_conditions.dup
where(conditions).where(["lower(username) = :value OR lower(email)
= :value", { :value => signin.downcase }]).first
end
這是我的模型,上面的代碼屬於:
devise :database_authenticatable, :registerable,
:recoverable, :rememberable, :trackable, :validatable, :confirmable
attr_accessor :signin
validates :username, :uniqueness => {:case_sensitive => false}
def self.find_first_by_auth_conditions(warden_conditions)
conditions = warden_conditions.dup
where(conditions).where(["lower(username) = :value OR lower(email)
= :value", { :value => signin.downcase }]).first
end
會有些一個幫助我呢?如果你給我一些關於這種方法如何工作的信息?
乍一看我要說它與登入attr_accessor做。你用它做什麼 ? –
只是用它來簽到 – Shahryar
這將是更好的做標誌使用一個輔助方法,而不是attr_accessor,因爲他們活不長。 –