我修改了flaskr sample app的登录,第一行获取错误.但www.html是在模板目录中.
return redirect(url_for('www'))
#return redirect(url_for('show_entries'))
Run Code Online (Sandbox Code Playgroud)
显示错误:
werkzeug.routing.BuildError
BuildError: ('www', {}, None)
Run Code Online (Sandbox Code Playgroud) enable :sessions
get '/foo' do
session['m'] = 'Hello World!'
redirect '/bar'
end
get '/bar' do
session['m'] # => 'Hello World!'
end
Run Code Online (Sandbox Code Playgroud)
它似乎不起作用.
谁有人解释这条线?
g = LocalProxy(lambda: _request_ctx_stack.top.g)
Run Code Online (Sandbox Code Playgroud)
来自烧瓶的代码
from werkzeug import LocalStack, LocalProxy
# context locals
_request_ctx_stack = LocalStack()
current_app = LocalProxy(lambda: _request_ctx_stack.top.app)
request = LocalProxy(lambda: _request_ctx_stack.top.request)
session = LocalProxy(lambda: _request_ctx_stack.top.session)
g = LocalProxy(lambda: _request_ctx_stack.top.g)
Run Code Online (Sandbox Code Playgroud)
Local的代码在这里:http: //pastebin.com/U3e1bEi0
我根据flaskr样本写这个,我可以用浏览器登录,但测试失败.谢谢你的帮助!
@app.route('/login', methods=['GET', 'POST'])
def login():
error = None
if request.method == 'POST':
username = request.form['username']
password = request.form['password']
if lib.authenticate_user(username, password):
session['logged_in'] = True
flash('You were logged in')
return render_template('www.html')
return render_template('login.html', error=error)
Run Code Online (Sandbox Code Playgroud)
tests.py
def login(self, username, password):
#print username, password
return self.app.post('/Login', data=dict(
username=username,
password=password
), follow_redirects=True)
# testing functions
def test_login_logout(self):
"""Make sure login and logout works"""
rv = self.login('c1','123')
assert 'You were logged in' in rv.data
Run Code Online (Sandbox Code Playgroud) 我正在尝试测试php-activerecord,它有一些测试.运行时:
phpunit sometestname
没啥事儿.我检查了代码,
include 'helpers/config.php';
require_once dirname(__FILE__) . '/../lib/Inflector.php';
class InflectorTest extends SnakeCase_PHPUnit_Framework_TestCase
{
public function set_up()
{
$this->inflector = ActiveRecord\Inflector::instance();
}
public function testOne()
{
$this->assertTrue(2+2==4);
}
Run Code Online (Sandbox Code Playgroud)
任何的想法?
