小编jef*_*fff的帖子

在python中序列化suds对象

好吧我正在努力改进python,所以我不确定这是开始我正在做什么的正确方法,但这是我目前的问题......

我需要通过SOAP方法获取一些信息,现在只使用部分信息,但存储整个结果以备将来使用(我们需要尽可能少地使用该服务).查找访问服务的最佳方式我认为suds是要走的路,它很简单,就像一个魅力来获取数据.但是现在我想以某种方式保存结果,最好是序列化/在数据库中,这样我以后可以把它拉出来并使用它.

什么是最好的方法,看起来像pickle/json不是一个选项?谢谢!

更新 阅读最佳答案我怎样才能腌泡沫效果?让我更好地了解为什么这不是一个选项,我想我已经卡住了重建一个基本的对象w /我需要的信息?

python soap pickle suds

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

使用Flask-SQLAlchemy进行多对多多数据库连接

我正在尝试使用Flask-SQLAlchemy和两个MySQL数据库进行多对多连接,除非它使用错误的数据库连接表,否则它非常接近.这是基础......

我有main_dbvendor_db.的表是设置为main_db.users,main_db.user_products(关系表),然后vendor_db.products.应该很清楚这些是如何连接的.

在我的app.py中,我正在设置这样的数据库:

app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql://user:pass@localhost/main_db'
app.config['SQLALCHEMY_BINDS'] = {
        'vendor_db': 'mysql://user:pass@localhost/vendor_db'
}
Run Code Online (Sandbox Code Playgroud)

模型定义设置如下:

from app import db

# Setup relationship
user_products_tbl = db.Table('user_products', db.metadata,
        db.Column('user_id', db.Integer, db.ForeignKey('users.user_id')),
        db.Column('product_id', db.Integer, db.ForeignKey('products.product_id'))
)

class User(db.Model):
    __tablename__ = 'users'
    id = db.Column('user_id', db.Integer, primary_key=True)
    products = db.relationship("Product", secondary=user_products_tbl,
            backref="users", lazy="dynamic")

class Product(db.Model):
    __bind_key__ = 'vendor_db'
    __tablename__ = 'products'
    id = db.Column('product_id', db.Integer, primary_key=True)
    name = db.Column(db.String(120))
Run Code Online (Sandbox Code Playgroud)

问题是,当我尝试获取用户的产品时,它试图vendor_db用于连接表而不是main_db.有什么想法我可以main_db改用吗?我已经尝试设置另一个绑定 …

python sqlalchemy flask flask-sqlalchemy

6
推荐指数
1
解决办法
1759
查看次数

偶尔的Flask服务器错误:'RuntimeError:调用Python对象时超出了最大递归深度'

我正在尝试找出在开发过程中使用基本Flask服务器运行我的应用程序时导致此错误的原因.我从这开始:

from myapp import app
app.run(debug=True, port=5001)
Run Code Online (Sandbox Code Playgroud)

一切都很好,我将继续编码和刷新等,但过了一段时间后,我得到递归错误,必须Ctrl-C服务器并重新启动它.不是什么大不了的事,只是有点烦人,不得不时不时地处理.

这是完整的追溯,我试图用它来确定原因,但看不到任何突出的东西(可能与werkzeug如何使用Cookie.py有关?):

Traceback (most recent call last):
  File "/Users/jeff/.virtualenvs/fmll/lib/python2.7/site-packages/flask/app.py", line 1701, in __call__
    return self.wsgi_app(environ, start_response)
  File "/Users/jeff/.virtualenvs/fmll/lib/python2.7/site-packages/werkzeug/wsgi.py", line 411, in __call__
    return self.app(environ, start_response)
  (last bit repeated a bunch - trimmed to fit in posting size requirements)
  File "/Users/jeff/.virtualenvs/fmll/lib/python2.7/site-packages/flask/app.py", line 1685, in wsgi_app
    with self.request_context(environ):
  File "/Users/jeff/.virtualenvs/fmll/lib/python2.7/site-packages/flask/ctx.py", line 274, in __enter__
    self.push()
  File "/Users/jeff/.virtualenvs/fmll/lib/python2.7/site-packages/flask/ctx.py", line 238, in push
    self.session = self.app.open_session(self.request)
  File "/Users/jeff/.virtualenvs/fmll/lib/python2.7/site-packages/flask/app.py", line 792, in open_session
    return self.session_interface.open_session(self, request)
  File "/Users/jeff/.virtualenvs/fmll/lib/python2.7/site-packages/flask/sessions.py", …
Run Code Online (Sandbox Code Playgroud)

python flask

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

标签 统计

python ×3

flask ×2

flask-sqlalchemy ×1

pickle ×1

soap ×1

sqlalchemy ×1

suds ×1