我正在为Flask 寻找类似uWSGI + django autoreload模式的东西.
在一个项目中,我开始使用MySQL作为数据库.我只是做一个插入而不是先检查,如果我得到代码为1062的IntegrityError异常,我知道有一个重复的条目并警告用户,这样做.
看起来基本上是这样的:
try:
# add duplicate, nothing bad happens yet, is only in sqla session
db.session.add(User(email='already_used_email@address_that_has_to_be_unique.com'))
# commit, now the IntegrityError is raised, when sqla inserts
db.session.commit()
except IntegrityError as e:
db.session.rollback()
# this is what i do with mysql, check the exception for code 1062
# how can i replace this with something db independent?
code, msg = e.orig
if code == 1062:
# send warning
pass
Run Code Online (Sandbox Code Playgroud)
现在,对于一个,这使得已经无法用例如测试.内存中的sqlite.不好,但我可以忍受.
然而,第二,我可能(必须/希望其他超出此问题的范围)切换到Postgres.当然我可以更改代码(也)检查Postgres错误代码,但我希望有一种方法让SQLALchemy告诉我,一个重复发生独立于数据库.数据库方言抽象......?
可能我忽略了一个明显的解决方案或者以错误的方式思考......
我有一个数量有限的文本,数据库中的单词,我希望显示转换为flask/jinja/babel webapp中的用户.例如."running"是"活动"列的可能值,对于我的德国用户来说应该是"laufen".
模板和代码中的单词被提取并放入目录中,但如何在目录中添加其他单词?有简单的文本文件提取器吗?
我唯一能想到的是,只需创建一个.py文件并在其中放入许多_('...')行,但这感觉错了......是吗?
python ×2
babel ×1
flask ×1
jinja2 ×1
mysql ×1
postgresql ×1
sqlalchemy ×1
uwsgi ×1
werkzeug ×1