本文整理汇总了Python中models.session.commit函数的典型用法代码示例。如果您正苦于以下问题:Python commit函数的具体用法?Python commit怎么用?Python commit使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了commit函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: add_admin
def add_admin(emailormobile):
user = session.query(User).filter(or_(User.email == emailormobile,User.mobile == emailormobile)).first()
if not user:
raise
admin = Admin(admin_id = ut.create_admin_id(),user_id = user.user_id,created = time.time()*1000,updated = time.time()*1000)
session.add(admin)
session.commit()
示例2: normalize_paths
def normalize_paths(self):
if self.normalize:
queryset = self.photoset.filter(~Photo.base_uri.endswith(os.sep)).all()
if len(queryset):
self.create_backup()
for p in queryset:
p.base_uri += os.sep
session.commit()
logger.info(_("Normalized path separator on %s photos.") % len(queryset))
if self.db_version >= DB_VERSION_ENCODED:
total = 0
# Look for photo without '%' in their path (i.e. not encoded)
queryset = self.photoset.filter(~Photo.base_uri.like('%\\%%', escape="\\")).all()
if len(queryset):
self.create_backup()
for p in queryset:
# Compare encoded version of base_uri to actual version
# (slice file:// part)
base_uri_encoded = urllib.quote(p.base_uri[7:].encode('utf-8'))
if base_uri_encoded != p.base_uri[7:]:
p.base_uri = p.base_uri[:7] + base_uri_encoded
total += 1
session.commit()
logger.info(_("Normalized path encoding on %s photos.") % total)
self.normalize = False
示例3: recieve_message
def recieve_message():
try:
message = request.form.get('message')
json_resp = False
if not message:
message = request.get_json()['message']
json_resp = True
message_data = Message(message=message)
session.add(message_data)
session.commit()
if json_resp:
resp = {
'status': 'success',
'message': message
}
return jsonify(**resp)
else:
return redirect(url_for('dashboard'))
except Exception as e:
resp = {
'status': 'failed',
'error': str(e)
}
return jsonify(**resp)
示例4: exec_global
def exec_global(self, request):
"""
Execute a global-scoped command.
"""
command = request["command"]
if command == "go back to perm":
liq.set_var("selected", "perm")
liq.send_command("perm-switch.skip")
self.send_feedback(request)
elif command == "rescan":
result = Utilities.rescan()
self.send_feedback(request, result)
elif command == "select":
studio = session.query(Studio).find_by(slug=request["studio"].decode('utf-8'))
if studio is not None:
studio.selected = True
session.add(studio)
session.commit()
liq.set_var("selected", str(studio.slug))
sylog("INFO: Selecting " + studio.slug)
self.send_feedback(request)
else:
self.send_feedback(request, "error", "Unknown studio %s" % request["studio"])
示例5: addEdit
def addEdit(self, _thread_id, _content, _submitted=False):
existingList = (
session.query(bot_comments_anetpool)
.filter_by(thread_id=_thread_id)
.order_by(desc(bot_comments_anetpool.edit_id))
.first()
)
if existingList is None:
row = bot_comments_anetpool()
row.thread_id = _thread_id
_from_template = self.anetpool_template.split("	", 1)
row.content = _from_template[0] + _content + "	" + _from_template[1]
row.submitted = _submitted
session.add(row)
else:
if len(existingList.content) + len(_content) >= 10000:
row = bot_comments_anetpool()
row.thread_id = _thread_id
_from_template = self.anetpool_template.split("	", 1)
row.content = _from_template[0] + _content + "	" + _from_template[1]
row.submitted_id = "e" + str(existingList.edit_id)
row.submitted = _submitted
session.add(row)
else:
_from_save = existingList.content.split("	", 1)
session.query(bot_comments_anetpool).filter_by(edit_id=existingList.edit_id).update(
{"content": _from_save[0] + _content + "	" + _from_save[1], "submitted": False}
)
session.commit()
示例6: item_edit
def item_edit(item_title):
categories = session.query(Category).all()
item = session.query(Item).filter_by(
title=item_title).one()
user = session.query(User).filter_by(
id=login_session.get('user_id')).one()
if item.user is not None and item.user.id != user.id:
return redirect(url_for('home'))
if request.method == 'POST':
form = vh.ItemForm(request.form, item)
file_storage_err = vh.store_item_pic(
item, request.files['picture'])
if (not form.validate() or file_storage_err is not None):
return render_template('item_edit.html',
form=form,
file_err=file_storage_err)
form.populate_obj(item)
try:
session.add(item)
session.commit()
except ValueError as e:
return "Database validation error: " + str(e)
except SQLAlchemyError as e:
# todo: log error, but don't display detailed message
# for security reasons
return "Database error: " + str(e)
return redirect(url_for('home'))
else:
form = vh.ItemForm(obj=item)
return render_template('item_edit.html',
form=form,
file_err=None)
示例7: add_comment
def add_comment(self, _thing_id, _content, _submitted=False, _signature=None):
if _signature is None:
_signature = self.signature
last_id = _thing_id
extra_len = len("\n\n--- continued below ---") + len(_signature)
while True:
if len(_content) <= 0:
return
content_parts = _content.split("\n")
stiched_content = ""
for part in content_parts:
if len(stiched_content) + len(part + "\n") + extra_len <= 10000:
stiched_content += part + "\n"
else:
break
row = bot_comments()
row.thing_id = last_id
row.submitted = _submitted
if _content[len(stiched_content) :] == "":
row.content = stiched_content + _signature
else:
row.content = stiched_content + "\n\n--- continued below ---" + _signature
session.add(row)
session.commit()
last_id = "i{}".format(session.query(bot_comments).order_by(desc(bot_comments.id)).first().id)
_content = _content[len(stiched_content) :]
示例8: submitComments
def submitComments(self):
global r
to_be_commented = session.query(bot_comments).filter_by(submitted=False).all()
for tbcm in to_be_commented:
obj = r.get_info(thing_id=tbcm.thing_id)
if tbcm.thing_id[:2] == "t3":
try:
reply_obj = obj.add_comment(tbcm.content)
except (praw.errors.InvalidSubmission):
self.updateSubmitted(bot_comments, tbcm.id, "del-1")
logging.warning("submitComment: failed (parentDeleted): {0}".format(tbcm.id))
else:
self.updateSubmitted(bot_comments, tbcm.id, reply_obj.name)
logging.info("submitComment: submit: {0}".format(tbcm.id))
elif tbcm.thing_id[:2] == "t1":
try:
reply_obj = obj.reply(tbcm.content)
except (praw.errors.InvalidComment):
self.updateSubmitted(bot_comments, tbcm.id, "del-1")
logging.warning("submitComment: failed (parentDeleted): {0}".format(tbcm.id))
else:
self.updateSubmitted(bot_comments, tbcm.id, reply_obj.name)
logging.info("submitComment: submit: {0}".format(tbcm.id))
elif tbcm.thing_id[:1] == "i":
new_id = self.searchSubmitted(bot_comments, tbcm.thing_id[1:])
if new_id == "del-1":
self.updateSubmitted(bot_comments, tbcm.id, "del-1")
if new_id is not None:
self.updateThingId(bot_comments, tbcm.id, new_id)
session.commit()
示例9: insert_test
def insert_test():
tom = Teacher(name='Tom', subject='Physics')
session.add(tom)
session.commit()
lucy = Student(name='Lucy', head_teacher_id=tom.id)
session.add(lucy)
session.commit()
示例10: save_utf
def save_utf(utf):
current_user = session_user(request)
utf_bool = bool(utf)
current_user.support_utf8 = utf_bool
current_user.tested_utf8 = True
session.commit()
return redirect(url_for('home'))
示例11: load_playlists
def load_playlists(session):
user = 1
playlist_titles = ["Narrative Shorts", "Something Different", "Hellbent Sports", "Documentaries"]
for title in playlist_titles:
playlist = models.Playlists(title=title, user_id=user)
session.add(playlist)
session.commit()
示例12: set_online
def set_online(cls, jid, show=None):
""" 设置成员在线
Arguments:
`jid` - 成员jid
`show` - stanza.show
"""
m = cls.get_one(jid)
if not m:
return False
try:
status = session.query(Status)\
.filter(and_(Status.resource == jid.resource,
Status.member == m)).one()
status.show = show
except NoResultFound:
status = Status(show, jid.resource)
if m.status:
m.status.append(status)
else:
m.status = [status]
finally:
try:
session.commit()
except:
session.rollback()
return True
示例13: get_whole_page_content
def get_whole_page_content(amount):
'''
get_whold_page_content()
amount : get_page_amount()
return : write sqlite
'''
count = 0
for page_num in range(1, amount+1):
print u'Scraping page <%3d>...' % page_num
url = build_url(page_num)
print u'Now in: %s' % url
# get page_content
content_lst = get_content_from_page(url)
print u'Get <%3d> pices from this page.\n' % len(content_lst)
for author, content in content_lst:
content_obj = Hot(author=author, content=content)
session.add(content_obj)
count += 1
if count >= 100:
session.commit()
count = 0
# couldn't be too soon
time.sleep(3)
session.commit()
return
示例14: mod
def mod():
global __HEXDIGEST__
if request.method == "GET":
mess = session.query(EmailMessage).get(__HEXDIGEST__)
if mess is None or mess.approved == True:
flash('No new messages to edit')
return render_template('edit.html')
dct = json.loads(mess.everything)
form = EditForm()
form.subject.data = dct.get('subject')
form.text.data = dct.get('body-plain')
form.approved.data = mess.approved
return render_template('edit.html', form=form)
else:
form = EditForm(request.form)
mess = session.query(EmailMessage).get(__HEXDIGEST__)
if form.approved.data == True:
send_message(form.data)
mess.approved = True
session.add(mess)
session.commit()
flash('message sent')
return render_template('edit.html')
flash("bad form")
return "bad form"
示例15: message_good
def message_good(form):
global __HEXDIGEST__
_json = json.dumps(form.to_dict())
mess = EmailMessage(_json)
mess.hexdigest = __HEXDIGEST__
session.add(mess)
session.commit()