小编zPr*_*ima的帖子

异步使用Flask-Mail会导致"RuntimeError:在应用程序上下文之外工作"

我试图异步发送一些邮件(根据Flask Mega-Tutorial,Part XI:Email Support中的代码).但是,我在应用程序上下文之外工作时收到以下错误.我该如何解决这个问题?

Traceback (most recent call last):
  File "C:\Users\Primoz\Desktop\RecycleFlaskServer\recycleserver\helpers.py", line 17, in send_async_email
    mail.send(msg)
  File "C:\Python33\lib\site-packages\flask_mail-0.9.0-py3.3.egg\flask_mail.py", line 434, in send
    message.send(connection)
  File "C:\Python33\lib\site-packages\flask_mail-0.9.0-py3.3.egg\flask_mail.py", line 369, in send
    connection.send(self)
  File "C:\Python33\lib\site-packages\flask_mail-0.9.0-py3.3.egg\flask_mail.py", line 173, in send
    email_dispatched.send(message, app=current_app._get_current_object())
  File "C:\Python33\lib\site-packages\werkzeug-0.9.4-py3.3.egg\werkzeug\local.py", line 297, in _get_current_object
    return self.__local()
  File "C:\Python33\lib\site-packages\flask-0.10.1-py3.3.egg\flask\globals.py", line 34, in _find_app
    raise RuntimeError('working outside of application context')
RuntimeError: working outside of application context
Run Code Online (Sandbox Code Playgroud)
from flask import Flask
from flask.ext.mail import Mail
app = Flask(__name__)
app.config.from_object('recycleserver.settings')
mail = …
Run Code Online (Sandbox Code Playgroud)

python python-multithreading flask flask-mail

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

angularjs - 控制器继承调用父级

我在第一个模块中有一个父控制器,在第二个模块中有一个“子”控制器。第二个模块依赖于第一个。我希望我的“子”控制器继承“父”控制器。但问题是如何调用“父”控制器方法。

例如:

 SecondModule.controller("childBrowseCtrl", function($scope, $injector, $controller){
        $injector.invoke(ParentBrowseCtrl, this, {$scope:$scope});

        //this overrides the onedit function from parent
        $scope.onEdit = function(){
            console.log("from edit console");

            //how do i make this work?
            ParentBrowseCtrl.$scope.onEdit();
        };

});
Run Code Online (Sandbox Code Playgroud)

html结构:

 <html>
   <head></head>

   <body>
      <div ng-view></div>
   </body>

   <script src="coreapp.js"></script>
   <script src="mainapp.js"></script>

   <script>
     angular.bootstrap(document,["MainApp"]);
   </script>

   </html>
Run Code Online (Sandbox Code Playgroud)

javascript angularjs

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

sqlalchemy - 当它实际位于columnCollection中时,AttributeError(key)缺少键

我的引擎有一个属性dMeta,返回引擎元,然后我有一个类,有一个方法调用table,基本上这样做:

def table(meta):
    return Table('table1',meta,autoload=True,schema=genShema())
Run Code Online (Sandbox Code Playgroud)

我正在自动加载表格:

t = SomeClass.table(engine.dMeta)
sql = select([t.c.ID, t.c.OPIS, t.c.IDG,
                         func.left(t.c.ID,2).label("Ident"),
                         (func.left(t.c.ID,2).label('Ident2')+' '+t.c.OPIS).label("show_as")])\
                .where(t.c.ATRIBUT=="VPFA")
Run Code Online (Sandbox Code Playgroud)

SQLAlchemy给出了以下错误:

def __getattr__(self, key):
    try:
        return self._data[key]
    except KeyError:
        raise AttributeError(key)
Run Code Online (Sandbox Code Playgroud)

关键是ID,self._data contains'ID'= {Column}是一个table1.ID如果我把self._data[key]我得到正确的值,没有错误,那么这里有什么问题?

即使我重新运行代码几次,有时它会中断,有时它不会:/

python mysql sqlalchemy

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

多语句事务中不允许 sqlalchemy MSSQL 创建数据库语句

使用 sqlalchemy 1.0.4、python 3.4.3 和 pyodbc 3.0.10。

我想为 MS SQL 服务器创建一个带有原始 sql 的数据库。

c = "mssql+pyodbc://sa:admin11$$@PROIMT01\SQLEXPRESS/master?driver=SQL+Server+Native+Client+11.0"
e = create_engine(c,echo=True)
con = e.connect()

con.execute("CREATE DATABASE xb;")
con.close()
Run Code Online (Sandbox Code Playgroud)

但是上面的代码返回一个错误"create database statement not allowed within multi-statement transaction"

con.execute("commit")在创建脚本之前尝试过,但它什么也没做。

更新
如果我设置了驱动程序,?driver=SQL+SERVER它就可以工作!?

python sql-server sqlalchemy

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

sqlalchemy - query.all() - 要字典的元组列表

这是我的电话: session.query(User.username, User.first_name, User.last_name).all()

它返回:[('myUsername', 'myFirstname', 'myLastname')]

我希望它是以下格式:
[{"username":"myUsername", "first_name":"myFirstname", "last_name":"myLastname"}]

我试过[dict(zip(["username","first_name","lastname"], x))]
但它返回这个:[{'username': ('myUsername', 'myFirstname', 'myLastname')}]

python dictionary sqlalchemy

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