我刚刚遇到一种情况,我不得不弄清楚为什么我的测试用户无法登录系统测试。
事实证明,该用户的密码为nil。
创建用户后,我运行binding.pry:
import tkinter as tk
class GUI(tk.Tk):
def __init__(self):
tk.Tk.__init__(self)
self.action = None
tk.Button(self,text="Print in 10 sec",command=self.callback).pack()
tk.Button(self, text="Cancel print", command=self.cancel_callback).pack()
def callback(self):
self.action = self.after(10000,lambda: print ("Hi"))
def cancel_callback(self):
if self.action:
self.after_cancel(self.action)
print ("Print cancelled")
root = GUI()
root.mainloop()
有人知道为什么密码不能通过FactoryBot保留在数据库中吗?
答案 0 :(得分:1)
User.last.password
为nil的原因是,纯文本密码已加密并且无法访问。检查您的schema.rb
文件...您应该仅会看到一个“加密密码”列(我假设您正在使用Devise)。
要检查用户是否仍然存在,只需检查user.persisted?
,user.errors
或类似的东西以找出发生了什么情况。