KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I'm following the Flask-SQLAlchemy tutorial. I have Flask 0.9, sqlalchemy 0.7.8 and flask-sqlalchemy 0.16 on python 2.6. (and I work with eclipse) (The tuto is here : http://packages.python.org/Flask-SQLAlchemy/models.html ) I have 2 classes : a man and a wallet. There is a 1-1 relationship. (Each man has his own wallet) class Man(db.Model): sid = db.Column(db.Integer, primary_key=True) name = db.Column(db.String(100), unique=False) wallet = db.relationship('Wallet', backref='man', lazy='dynamic', uselist=False) def __init__(self, wallet): self.wallet = wallet class Wallet(db.Model): sid = db.Column(db.Integer, primary_key=True) account = db.Column(db.Integer) manId = db.Column(db.Integer, db.ForeignKey('man.sid')) def __init__(self, account): self.account = account In my "main" module, I create my database : app = Flask(__name__) app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:PATH' db = SQLAlchemy(app) In this very same module, I try to attach a Wallet to a Man : if __name__ == "__main__": db.create_all() w1 = Wallet(132) w2 = Wallet(18) db.session.add(w1) db.session.add(w2) db.session.commit() man1 = Man(w1) db.session.add(man1) db.session.commit() But I get this error : TypeError: 'Wallet' object is not iterable I fail to understand why such an error appears. What is the right way of adding a mapped object ? PS : I've been on the SQLAlchemy tutorial and I believe that they would declare things differently : class Man(db.Model): sid = db.Column(db.Integer, primary_key=True) name = db.Column(db.String(100), unique=False) wallet = db.relationship('Wallet', backref='man', lazy='dynamic', uselist=False)
Tags (comma-separated)
Save Edits
Cancel