本文整理匯總了Python中models.Category.get_or_create方法的典型用法代碼示例。如果您正苦於以下問題:Python Category.get_or_create方法的具體用法?Python Category.get_or_create怎麽用?Python Category.get_or_create使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類models.Category
的用法示例。
在下文中一共展示了Category.get_or_create方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。
示例1: task_page
# 需要導入模塊: from models import Category [as 別名]
# 或者: from models.Category import get_or_create [as 別名]
def task_page(self, grab, task):
if grab.response.code != 200:
with database.transaction():
Removed.create(id=task.pk)
return
data = grab.doc.structure(
'//*[@id="detailsframe"]',
x(
'./*[@id="details"]',
category='.//dt[.="Type:"]/following-sibling::dd/a/text()',
size=('.//dt[.="Size:"]/following-sibling::dd/text()',
converters.extract_integer),
created=('.//dt[.="Uploaded:"]/following-sibling::dd/text()',
converters.extract_datetime),
hash=('.//dt[.="Info Hash:"]/following-sibling::dd',
converters.extract_tail),
),
nfo=('//*[@class="nfo"]/pre', converters.extract_inner_html),
magnet='//*[@class="download"]/a/@href',
title='./*[@id="title"]/text()',
)[0]
data.update({
'id': task.pk,
})
with database.transaction():
category = Category.get_or_create(name=data.pop('category', ''))
Torrent.create(category=category,
**data)
示例2: add_or_edit_prod
# 需要導入模塊: from models import Category [as 別名]
# 或者: from models.Category import get_or_create [as 別名]
def add_or_edit_prod(self):
if not self.is_valide():
print("is not valide")
return
name = str(self.name_field.text())
category = str(self.category_field.text())
# number_parts_box = str(self.number_parts_box_field.text())
product = self.prod
product.name = name
# product.number_parts_box = number_parts_box
product.category = Category.get_or_create(category)
# try:
# if self.path_filename:
# fileobj = FileJoin(file_name=self.fileName,
# file_slug=self.path_filename)
# fileobj.save()
# product.file_join = fileobj
# except IOError:
# self.parent.Notify(u"""<h2>Problème d'import du fichier</h2>
# Changer le nom du fichier et reesayé si ça ne fonctionne pas contacté le developper""", "error")
# return
# except Exception as e:
# print(e)
try:
product.save()
self.cancel()
self.table_p.refresh_()
self.parent.Notify(self.succes_msg, "success")
except peewee.IntegrityError as e:
field_error(
self.name_field, u"""Le produit <b>%s</b> existe déjà dans la basse de donnée.""" % product.name)
return False