python – peewee实例匹配查询不存在
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了python – peewee实例匹配查询不存在,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1953字,纯文字阅读大概需要3分钟。
内容图文
![python – peewee实例匹配查询不存在](/upload/InfoBanner/zyjiaocheng/773/3bda8340d03b45d1a6ca3f8ad99e7296.jpg)
我有以下代码,我在查询我的peewee数据库.我在具有term.sets_term_id的行上的for循环中收到错误.这是错误TermsDoesNotExist:实例匹配查询不存在:如果我执行变量(term),则sets_terms_id是一个选项.为什么我会收到该错误以及如何解决?
def get_api_response(id):
response = {}
print("id is " + str(id))
try:
sets = models.Sets.select().where(models.Sets.user_id == id)
except models.DoesNotExist:
return json.loads({'error' : 'that set does not exist'})
else:
print("it was successful")
for term in sets:
print(term.sets_term_id)
这是我的套装和条款模型
class Terms(UserMixin, BaseModel):
term_id = CharField()
sets_id = CharField()
rank = IntegerField()
term = TextField()
definition = TextField()
@classmethod
def include_term(cls, set_id, term_id, definition, rank, term, **kwards):
try:
cls.select().where(cls.term_id == term_id).get()
except cls.DoesNotExist:
print("putting term into db")
concept = cls(
sets_id = set_id,
term_id = term_id,
definition = definition,
rank = rank,
term= term)
concept.save()
print(concept.term)
print("term saved to db")
return concept
else:
raise Exception("Term with that id already exists")
class Sets(UserMixin, BaseModel):
user_id = CharField()
name_set = CharField()
#created_date = DateField()
#modified_date = DateField()
#published_date = DateField()
sets_term_id = ForeignKeyField(Terms, to_field="sets_id")
@classmethod
def include_set(cls, user_id, name_set, sets_term_id, **kwards):
try:
cls.select().where(
(cls.name_set == name_set) | (cls.sets_term_id == sets_term_id)
).get()
except cls.DoesNotExist:
print("putting set into db")
quizlet_set = cls(
user_id = user_id,
name_set = name_set,
sets_term_id = sets_term_id)
print(quizlet_set.name_set)
quizlet_set.save()
print("set saved in db")
return quizlet_set
else:
raise Exception("Set with that name already exists")
解决方法:
问题出在你的except块中.
except models.DoesNotExist:
return json.loads({'error' : 'that set does not exist'})
应该:
except models.Sets.DoesNotExist:
return json.loads({'error' : 'that set does not exist'})
内容总结
以上是互联网集市为您收集整理的python – peewee实例匹配查询不存在全部内容,希望文章能够帮你解决python – peewee实例匹配查询不存在所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。