小编Xia*_*kun的帖子

在烧瓶中发布json时'400 Bad Request'

我的申请很简单,

#@csrt.exempt
@app.route('/preorders/json', methods=['POST'])
def json_create_preorders():
    #print request
    print 'test'
    #print request.json
    print request.mimetype
    print request.json
    print 'aaa',request.get_json(force=True)
    print request.json['product_id']
    if not request.json or not 'product_id' in request.json or not 'customer_name' in request.json or not 'customer_phone' in request.json:
        abort(400)
    preorder=Preorder(request.json['customer_name'],request.json['customer_phone'],request.json['product_id'])
    db.session.add(preorder)
    db.session.commit()
    return jsonify({'status':'success'}), 201
Run Code Online (Sandbox Code Playgroud)

POST json卷曲,

curl -i -H "Content-Type: application/json" -X POST -d '{"product_id":"111", "customer_name"="xiaokun", "customer_phone"="1231"}' http://xxxx/preorders/json
Run Code Online (Sandbox Code Playgroud)

从服务器检查,打印'test'和'request.mimetype'.然后是400响应.任何人都可以帮忙看看?

python json flask flask-restful

5
推荐指数
2
解决办法
1万
查看次数

将数据卷挂载到docker并具有读写权限

我想将主机数据卷挂载到docker。但容器应该对其具有读写权限,同时数据卷的任何更改不应影响主机中的数据。

我可以想象一种将多个数据卷安装到单个文件夹的解决方案,一个是只读的,另一个是读写的。但只有第二个“-v”在我的命令中起作用,

docker run -ti --name build_cent1 -v /codebase/:/code:ro -v /temp:/code:rw centos6:1.0 bash
Run Code Online (Sandbox Code Playgroud)

linux filesystems docker

5
推荐指数
1
解决办法
3万
查看次数

Flask Babel不起作用

我使用Flask Babel为烧瓶管理项目做I18N.但即使使用简单的模板也无法使其工作.这是代码,首先初始化babel,

app=Flask(__name__,template_folder='templates')
app.config.from_object('config')
csrf=CsrfProtect(app)
bcrypt=Bcrypt(app)
db=SQLAlchemy(app)
babel=Babel(app) 
@babel.localeselector
def get_locale():
    return 'zh_Hans_CN'
Run Code Online (Sandbox Code Playgroud)

添加构造管理页面并添加I18N,我也尝试lazy_gettext().不行.

# Create admin
admin = admin.Admin(app, 'iInvest:', index_view=MyAdminIndexView(), base_template='my_master.html')  
# Add view 
admin.add_view(UserManageView(User, db.session, gettext(u'User Management'))) 
Run Code Online (Sandbox Code Playgroud)

使用babel获取I18N并添加翻译,

os.system(pybabel + ' extract -F babel.cfg -k lazy_gettext -o messages.pot iInvest/')
os.system(pybabel + ' init -i messages.pot -d translations -l zh_Hans_CN')
os.unlink('messages.pot')
Run Code Online (Sandbox Code Playgroud)

它找到所有文本并手动添加翻译,然后编译,

os.system(pybabel + ' compile -f -d translations')
Run Code Online (Sandbox Code Playgroud)

重启服务器并检查页面,没有任何内容被翻译 我尝试过其他语言,但都没有.可能的原因是什么?这是完整的代码https://github.com/XiaokunHou/FlaskProject

python babel flask

4
推荐指数
1
解决办法
1881
查看次数

Java如何知道在使用lambda表达式时应该覆盖哪个方法

使用JAVA8,内部类可以用lambda表达式替换.

Comparator c = (a, b) -> Integer.compare(a.length(), b.length());

Runnable java8Runner = () ->{System.out.println("I am running");};
Run Code Online (Sandbox Code Playgroud)

jvm怎么知道,这个lambda应该覆盖正确的方法?在上面的例子中,它们是run()compare().

java lambda java-8

2
推荐指数
2
解决办法
632
查看次数

标签 统计

flask ×2

python ×2

babel ×1

docker ×1

filesystems ×1

flask-restful ×1

java ×1

java-8 ×1

json ×1

lambda ×1

linux ×1