首先我是django/python的新手.
我正在尝试创建一个登录网站,允许用户注册帐户并通过电子邮件验证或直接通过fb或谷歌登录(Oauth)
当我点击发送到电子邮件的验证网址时,我收到错误.
错误:
ValueError at /activate/Mjk/4p1-dcc5f7ed2e7c847fe362/
You have multiple authentication backends configured and therefore must
provide the `backend` argument or set the `backend` attribute on the user.
Request Method: GET
Request URL: http://127.0.0.1:8000/activate/Mjk/4p1-dcc5f7ed2e7c847fe362/
Django Version: 1.11.3
Exception Type: ValueError
Exception Value:
You have multiple authentication backends configured and therefore must provide the `backend` argument or set the `backend` attribute on the user.
Exception Location: /usr/local/lib/python2.7/dist-packages/django/contrib/auth/__init__.py in login, line 149
Python Executable: /usr/bin/python
Python Version: 2.7.12
Python Path:
['/home/gaby/django projects/simple-signup-master/profile-model', …Run Code Online (Sandbox Code Playgroud) 我已经花了几个小时就没有多少进展.我正在使用SublimeLinter v1.7 [1]运行Sublime Text 2.0.2.它可以实时地发布Python,但对于许多其他语言,我使用日常[Javascript,Ruby,CSS/SCSS等],它只会在保存时通过控制台显示格式错误的警告[2].我已经为可执行映射尝试了许多设置.我目前有:
"sublimelinter_executable_map":
{
"javascript": "/usr/local/bin/node",
"node": "/usr/local/bin/node"
},
Run Code Online (Sandbox Code Playgroud)
我也有"javascript":"/ usr/local/bin/node".我也尝试使用jshint和jslint作为"javascript_linter"选项.
控制台显示SublimeLinter加载和启用javascript,CSS和Ruby(分别使用节点,ruby和节点).
在控制台上启用消息后,我得到:
Traceback (most recent call last):
File "./SublimeLinter.py", line 431, in _update_view
File "./SublimeLinter.py", line 143, in run_once
File "./sublimelinter/modules/base_linter.py", line 291, in run
File "./sublimelinter/modules/javascript.py", line 72, in parse_errors
ValueError: Error from jslint: util.puts: Use console.log instead
Run Code Online (Sandbox Code Playgroud)
也:
SublimeLinter: css enabled (using node.js)
Traceback (most recent call last):
File "./SublimeLinter.py", line 431, in _update_view
File "./SublimeLinter.py", line 143, in run_once
File "./sublimelinter/modules/base_linter.py", line 291, …Run Code Online (Sandbox Code Playgroud) Mock 文档描述了一种简单而优雅的方法,可以将补丁应用于以下内容中的所有测试方法TestCase:
@patch('foo.bar')
@patch('foo.baz')
@patch('foo.quux')
@patch('foo.narf')
class FooTest(TestCase):
def test_foo(self, bar, baz, quux, narf):
""" foo """
self.assertTrue(False)
Run Code Online (Sandbox Code Playgroud)
但是,我在这个方法中遇到的一个问题是,如果我想在其中一个测试方法中的一个补丁上调用stop(),那么似乎无法获得对补丁的引用object - 传递给方法的唯一东西是mock对象,在本例bar中baz是quux,narf.
我发现解决这个问题的唯一方法是转到模拟文档中描述的模式,其中实例化修补程序并在setUp方法内部启动并在方法内TestCase停止tearDown.这符合我的目的,但增加了许多额外的样板,并没有像类装饰器方法那样优雅.
有没有其他方法可以解决这个问题?
我一直在研究SICP的最后几个练习,其中几个练习使用高阶函数.目前我正在尝试将我的解决方案中的问题调试到1.45,这会导致arity不匹配.提高误差的功能是两次对定点函数求解器应用平均操作的结果.
它将使我调试的努力了很多容易,如果我可以只转储某种程序表示,鉴于该程序已经通过其他几个能够改变它,它会引发错误之前的程序运行.我看过对DrRacket,增加了调试文件(require racket/trace)和 (require errortrace)我的模块,我认为我熟悉的调试系统的所有功能-但我仍然不知道如何做到这一点.
DrRacket的答案是理想的,但任何事情都有帮助.
python ×2
django ×1
mocking ×1
oauth ×1
racket ×1
scheme ×1
sicp ×1
sublimetext2 ×1
ubuntu ×1
unit-testing ×1