本文整理汇总了Python中z3c.saconfig.Session.delete方法的典型用法代码示例。如果您正苦于以下问题:Python Session.delete方法的具体用法?Python Session.delete怎么用?Python Session.delete使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类z3c.saconfig.Session
的用法示例。
在下文中一共展示了Session.delete方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: render
# 需要导入模块: from z3c.saconfig import Session [as 别名]
# 或者: from z3c.saconfig.Session import delete [as 别名]
def render(self):
"""JSON entry point for session deletion."""
session = Session()
ss = session.query(model.SurveySession).get(self.request.form["id"])
if ss is not None:
session.delete(ss)
return dict(result="ok")
示例2: render
# 需要导入模块: from z3c.saconfig import Session [as 别名]
# 或者: from z3c.saconfig.Session import delete [as 别名]
def render(self):
session = Session()
ss = session.query(SurveySession).get(self.request.form["id"])
if ss is not None:
flash = IStatusMessage(self.request).addStatusMessage
flash(_(u"Session `${name}` has been deleted.",
mapping={"name": getattr(ss, 'title')}), "success")
session.delete(ss)
self.request.response.redirect(self.context.absolute_url())
示例3: update
# 需要导入模块: from z3c.saconfig import Session [as 别名]
# 或者: from z3c.saconfig.Session import delete [as 别名]
def update(self):
key = self.request.get("key")
if key is None:
return
request = Session.query(AccountChangeRequest).get(key)
if request is None:
return
request.account.loginname = request.value
Session.delete(request)
flash = IStatusMessage(self.request).addStatusMessage
flash(_("Your email address has been updated."), "success")
self.request.response.redirect(aq_inner(self.context).absolute_url())
示例4: handleDelete
# 需要导入模块: from z3c.saconfig import Session [as 别名]
# 或者: from z3c.saconfig.Session import delete [as 别名]
def handleDelete(self, action):
(data, errors) = self.extractData()
if errors:
return
user = getSecurityManager().getUser()
if user.password != data["password"]:
raise WidgetActionExecutionError("password",
Invalid(_(u"Invalid password")))
user = getSecurityManager().getUser()
Session.delete(user)
self.logout()
self.request.response.redirect(self.request.client.absolute_url())
示例5: delete_association
# 需要导入模块: from z3c.saconfig import Session [as 别名]
# 或者: from z3c.saconfig.Session import delete [as 别名]
def delete_association(ids):
if not len(ids) == 2:
logger = logging.getLogger('cirb.organizations.browser.organizationsmanage')
logger.error("Try to delete an association, but there are not 2 ids.")
return
session = Session()
query1 = session.query(Association).filter(Association.canonical_id == ids[0]).filter(Association.translated_id == ids[1]).filter(Association.association_type == 'lang')
query2 = session.query(Association).filter(Association.canonical_id == ids[1]).filter(Association.translated_id == ids[0]).filter(Association.association_type == 'lang')
query = query1.union(query2)
assoc = query.all()
if len(assoc) > 1:
logger.error("There are {0} association with ids {1} and {2}").format(len(assoc), ids[0], ids[1])
session.delete(query.first())
示例6: __call__
# 需要导入模块: from z3c.saconfig import Session [as 别名]
# 或者: from z3c.saconfig.Session import delete [as 别名]
def __call__(self, form):
context = form.context
session = Session()
try:
session.delete(context)
form.status = self.successMessage
form.flash(form.status)
form.redirect(form.url(context.__parent__))
return SUCCESS
except:
pass
form.status = self.failureMessage
form.flash(form.status)
form.redirect(form.url(form.context))
return FAILURE
示例7: update
# 需要导入模块: from z3c.saconfig import Session [as 别名]
# 或者: from z3c.saconfig.Session import delete [as 别名]
def update(self):
if redirectOnSurveyUpdate(self.request):
return
context = aq_inner(self.context)
self.next_is_report = False
# already compute "next" here, so that we can know in the template
# if the next step might be the report phase, in which case we
# need to switch off the sidebar
next = FindNextQuestion(
context, filter=self.question_filter)
if next is None:
# We ran out of questions, proceed to the report
url = "%s/report" % self.request.survey.absolute_url()
self.next_is_report = True
else:
url = QuestionURL(
self.request.survey, next, phase="actionplan")
if self.request.environ["REQUEST_METHOD"] == "POST":
reply = self.request.form
session = Session()
context.comment = reply.get("comment")
context.priority = reply.get("priority")
new_plans = self.extract_plans_from_request()
for plan in context.action_plans:
session.delete(plan)
context.action_plans.extend(new_plans)
SessionManager.session.touch()
if reply["next"] == "previous":
next = FindPreviousQuestion(
context, filter=self.question_filter)
if next is None:
# We ran out of questions, step back to intro page
url = "%s/evaluation" % self.request.survey.absolute_url()
else:
url = QuestionURL(
self.request.survey, next, phase="actionplan")
return self.request.response.redirect(url)
else:
self.data = context
if len(context.action_plans) == 0:
self.data.empty_action_plan = [model.ActionPlan()]
self.title = context.parent.title
self.tree = getTreeData(
self.request, context,
filter=self.question_filter, phase="actionplan")
if self.context.is_custom_risk:
self.risk = self.context
self.description_intro = u""
self.risk.description = u""
number_images = 0
else:
self.risk = self.request.survey.restrictedTraverse(
context.zodb_path.split("/"))
number_images = getattr(self.risk, 'image', None) and 1 or 0
if number_images:
for i in range(2, 5):
number_images += getattr(
self.risk, 'image{0}'.format(i), None) and 1 or 0
ploneview = getMultiAdapter(
(self.context, self.request), name="plone")
stripped_description = StripMarkup(self.risk.description)
if len(stripped_description) > DESCRIPTION_CROP_LENGTH:
self.description_intro = ploneview.cropText(
stripped_description, DESCRIPTION_CROP_LENGTH)
else:
self.description_intro = ""
self.solutions = [
solution for solution in self.risk.values()
if ISolution.providedBy(solution)]
self.number_images = number_images
self.has_images = number_images > 0
self.image_class = IMAGE_CLASS[number_images]
self.risk_number = self.context.number
lang = getattr(self.request, 'LANGUAGE', 'en')
if "-" in lang:
elems = lang.split("-")
lang = "{0}_{1}".format(elems[0], elems[1].upper())
self.delete_confirmation = translate(_(
u"Are you sure you want to delete this measure? This action can "
u"not be reverted."),
target_language=lang)
self.override_confirmation = translate(_(
u"The current text in the fields 'Action plan', 'Prevention plan' and "
u"'Requirements' of this measure will be overwritten. This action cannot be "
u"reverted. Are you sure you want to continue?"),
target_language=lang)
self.message_date_before = translate(_(
u"error_validation_before_end_date",
default=u"This date must be on or before the end date."),
target_language=lang)
self.message_date_after = translate(_(
u"error_validation_after_start_date",
default=u"This date must be on or after the start date."),
#.........这里部分代码省略.........
示例8: update
# 需要导入模块: from z3c.saconfig import Session [as 别名]
# 或者: from z3c.saconfig.Session import delete [as 别名]
def update(self):
if redirectOnSurveyUpdate(self.request):
return
context = aq_inner(self.context)
self.errors = {}
if self.request.environ["REQUEST_METHOD"] == "POST":
reply = self.request.form
session = Session()
errors = False
reply["action_plans"] = []
new_plans = []
for i in range(0, len(reply['measure'])):
# repoze.formapi treats an empty input for an int as a
# validation error.
measure = dict([p for p in reply['measure'][i].items()
if p[1].strip()])
form = ActionPlanItemForm(params=measure)
reply['action_plans'].append(measure)
if not form.validate():
errors = True
reply['action_plans'][-1]['errors'] = \
dict(form.errors._dict)
if u'Start date is not before end date' in \
form.errors._messages:
reply['action_plans'][-1]['errors'][
'planning_start_date'] = [
u'Start date is not before end date']
continue
if len(measure) > 2:
new_plans.append(model.ActionPlan(
action_plan=form.data["action_plan"],
prevention_plan=form.data["prevention_plan"],
requirements=form.data["requirements"],
responsible=form.data["responsible"],
budget=form.data["budget"],
planning_start=self._fieldsToDate(
form.data["planning_start_year"],
form.data["planning_start_month"],
form.data["planning_start_day"]),
planning_end=self._fieldsToDate(
form.data["planning_end_year"],
form.data["planning_end_month"],
form.data["planning_end_day"]),
))
if errors:
self.data = reply
else:
context.comment = reply.get("comment")
context.priority = reply.get("priority")
for plan in context.action_plans:
session.delete(plan)
context.action_plans.extend(new_plans)
SessionManager.session.touch()
if reply["next"] == "previous":
next = FindPreviousQuestion(
context, filter=self.question_filter)
if next is None:
# We ran out of questions, step back to intro page
url = "%s/evaluation" \
% self.request.survey.absolute_url()
self.request.response.redirect(url)
return
else:
next = FindNextQuestion(
context, filter=self.question_filter)
if next is None:
# We ran out of questions, proceed to the report
url = "%s/report" % self.request.survey.absolute_url()
self.request.response.redirect(url)
return
url = QuestionURL(
self.request.survey, next, phase="actionplan")
self.request.response.redirect(url)
return
else:
if len(context.action_plans) == 0:
context.action_plans.append(model.ActionPlan())
self.data = context
self.risk = risk = self.request.survey.restrictedTraverse(
context.zodb_path.split("/"))
self.title = context.parent.title
self.tree = getTreeData(
self.request, context,
filter=self.question_filter, phase="actionplan")
self.solutions = [solution for solution in risk.values()
if ISolution.providedBy(solution)]
super(ActionPlanView, self).update()