玩蛇网提供最新Python编程技术信息以及Python资源下载!

db.session.commit()的时候抛出sqlalchemy.exc.IntegrityError错误?

class Category(db.Model):
	id = db.Column(db.Integer, primary_key=True)
	category = db.Column(db.String(80))
	posts = db.relationship('Post', backref="posts", lazy="dynamic")

	def __repr__(self):
		return "<Category %s>" % self.category

class Post(db.Model):
	id = db.Column(db.Integer, primary_key=True)
	title = db.Column(db.String(120))
	content = db.Column(db.Text)
	timestamp = db.Column(db.DateTime)
	category_id = db.Column(db.Integer, db.ForeignKey('category.id'))

	def __repr__(self):
		return "<Post %s>" % self.title

在shell里面执行下面的代码的时候不会报错

>>> c=Category(category='flask')
>>> db.session.add(c)
>>> db.session.commit()

可是执行下面的代码的时候就抛出sqlalchemy.exc.IntegrityError错误了。

>>> p=Post(title='test', content='ccc', timestamp=datetime.utcnow(), category_id=c)
>>> db.session.add(c)
>>> db.session.commit()

我不知道哪里做错了。。估计是ForeignKey的问题?
以前不用ForeignKey的时候是没有报错的。。。

求教,谢谢~

玩蛇网文章,转载请注明出处和文章网址:https://www.iplaypy.com/wenda/wd20279.html

相关文章 Recommend

玩蛇网Python互助QQ群,欢迎加入-->: 106381465 玩蛇网Python新手群
修订日期:2017年03月18日 - 00时23分18秒 发布自玩蛇网

您现在的位置: 玩蛇网首页 > Python问题解答 > 正文内容
我要分享到:

必知PYTHON教程 Must Know PYTHON Tutorials

必知PYTHON模块 Must Know PYTHON Modules