本文整理汇总了Python中xadmin.util.unquote函数的典型用法代码示例。如果您正苦于以下问题:Python unquote函数的具体用法?Python unquote怎么用?Python unquote使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了unquote函数的12个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。
示例1: get
def get(self, request, object_id):
if not self.has_change_permission(request):
raise PermissionDenied
self.obj = self.get_object(unquote(object_id))
self.form = self.change_password_form(self.obj)
return self.get_response()
开发者ID:sirithink,项目名称:django-xadmin,代码行数:7,代码来源:auth.py
示例2: post
def post(self, request, object_id):
self.org_obj = self.get_object(unquote(object_id))
if not self.has_change_permission(self.org_obj):
raise PermissionDenied
if self.org_obj is None:
raise Http404(_('%(name)s object with primary key %(key)r does not exist.') % \
{'name': force_unicode(self.opts.verbose_name), 'key': escape(object_id)})
pk = getattr(self.org_obj, self.org_obj._meta.pk.attname)
model_fields = [str(pk) + '-' + f.name for f in self.opts.fields]
fields = [f[len(str(pk)) + 1:] for f in request.POST.keys() if f in model_fields]
defaults = {
"form": forms.ModelForm,
"fields": fields,
"formfield_callback": self.formfield_for_dbfield,
}
form_class = modelform_factory(self.model, **defaults)
form = form_class(instance=self.org_obj, data=request.POST, files=request.FILES)
form.prefix = str(pk)
result = {}
if form.is_valid():
form.save(commit=True)
result['result'] = 'success'
result['new_data'] = form.cleaned_data
result['new_html'] = dict([(f, self.get_new_field_html(f)) for f in fields])
else:
result['result'] = 'error'
result['errors'] = JsonErrorDict(form.errors, form).as_json()
return self.render_response(result)
开发者ID:Ddper,项目名称:django-xadmin,代码行数:35,代码来源:editable.py
示例3: get
def get(self, request, object_id, *args, **kwargs):
object_id = unquote(object_id)
self.obj = self.get_object(object_id)
if not self.has_change_permission(self.obj):
raise PermissionDenied
return self.get_response()
开发者ID:rzg,项目名称:django-xadmin,代码行数:8,代码来源:xversion.py
示例4: init_request
def init_request(self, object_id, *args, **kwargs):
self.obj = self.get_object(unquote(object_id))
if not self.has_view_permission(self.obj):
raise PermissionDenied
if self.obj is None:
raise Http404(_('%(name)s object with primary key %(key)r does not exist.') %
{'name': force_unicode(self.opts.verbose_name), 'key': escape(object_id)})
开发者ID:apprentice1985,项目名称:django-xadmin,代码行数:9,代码来源:dashboard.py
示例5: init_request
def init_request(self, object_id, *args, **kwargs):
self.org_obj = self.get_object(unquote(object_id))
if not self.has_change_permission(self.org_obj):
raise PermissionDenied
if self.org_obj is None:
raise Http404(_('%(name)s object with primary key %(key)r does not exist.') %
{'name': force_unicode(self.opts.verbose_name), 'key': escape(object_id)})
# comm method for both get and post
self.prepare_form()
开发者ID:myaniu,项目名称:django-xadmin,代码行数:12,代码来源:edit.py
示例6: post
def post(self, request, object_id):
if not self.has_change_permission(request):
raise PermissionDenied
self.obj = self.get_object(unquote(object_id))
self.form = self.change_password_form(self.obj, request.POST)
if self.form.is_valid():
self.form.save()
self.message_user(_('Password changed successfully.'), 'success')
return HttpResponseRedirect(self.model_admin_url('change', self.obj.pk))
else:
return self.get_response()
开发者ID:sirithink,项目名称:django-xadmin,代码行数:12,代码来源:auth.py
示例7: init_request
def init_request(self, object_id, *args, **kwargs):
self.org_obj = self.get_object(unquote(object_id))
# For list view get new field display html
self.pk_attname = self.opts.pk.attname
if not self.has_change_permission(self.org_obj):
raise PermissionDenied
if self.org_obj is None:
raise Http404(_('%(name)s object with primary key %(key)r does not exist.') %
{'name': force_text(self.opts.verbose_name), 'key': escape(object_id)})
开发者ID:116pythonZS,项目名称:imooc-django,代码行数:12,代码来源:editable.py
示例8: init_request
def init_request(self, object_id, *args, **kwargs):
"""
初始化操作。根据传入的 ``object_id`` 取得要被显示的数据对象,而后进行权限判断, 如果没有数据查看权限会显示禁止页面.
"""
self.obj = self.get_object(unquote(object_id))
# 须有查看权限
if not self.has_view_permission(self.obj):
raise PermissionDenied
if self.obj is None:
raise Http404(
_('%(name)s object with primary key %(key)r does not exist.') %
{'name': force_unicode(self.opts.verbose_name), 'key': escape(object_id)})
self.org_obj = self.obj
开发者ID:JoneXiong,项目名称:DjangoX,代码行数:15,代码来源:detail.py
示例9: init_request
def init_request(self, object_id, *args, **kwargs):
"The 'delete' admin view for this model."
self.obj = self.get_object(unquote(object_id))
if not self.has_delete_permission(self.obj):
raise PermissionDenied
if self.obj is None:
raise Http404(_('%(name)s object with primary key %(key)r does not exist.') % {'name': force_str(self.opts.verbose_name), 'key': escape(object_id)})
using = router.db_for_write(self.model)
# Populate deleted_objects, a data structure of all related objects that
# will also be deleted.
(self.deleted_objects, self.model_count, self.perms_needed, self.protected) = get_deleted_objects(
[self.obj], self.opts, self.request.user, self.admin_site, using)
开发者ID:jneight,项目名称:django-xadmin,代码行数:16,代码来源:delete.py
示例10: init_request
def init_request(self, object_id, *args, **kwargs):
"""
初始化操作。根据传入的 ``object_id`` 取得要被删除的数据对象,而后进行权限判断
"""
self.obj = self.get_object(unquote(object_id))
if not self.has_delete_permission(self.obj):
raise PermissionDenied
if self.obj is None:
raise Http404(_('%(name)s object with primary key %(key)r does not exist.') % {'name': force_unicode(self.opts.verbose_name), 'key': escape(object_id)})
using = router.db_for_write(self.model) # 取得所用db
# 生成 deleted_objects, 存有所有即将被删除的关联数据
(self.deleted_objects, self.perms_needed, self.protected) = get_deleted_objects(
[self.obj], self.opts, self.request.user, self.admin_site, using)
开发者ID:JoneXiong,项目名称:DjangoX,代码行数:16,代码来源:delete.py
示例11: post
def post(self, request, object_id, *args, **kwargs):
object_id = unquote(object_id)
self.obj = self.get_object(object_id)
if not self.has_change_permission(self.obj):
raise PermissionDenied
params = self.request.POST
if "version_a" not in params or "version_b" not in params:
self.message_user(_("Must select two versions."), "error")
return self.get_response()
version_a_id = params["version_a"]
version_b_id = params["version_b"]
if version_a_id == version_b_id:
self.message_user(_("Please select two different versions."), "error")
return self.get_response()
version_a = get_object_or_404(Version, pk=version_a_id)
version_b = get_object_or_404(Version, pk=version_b_id)
diffs = []
obj_a, detail_a = self.get_version_object(version_a)
obj_b, detail_b = self.get_version_object(version_b)
for f in self.opts.fields + self.opts.many_to_many:
if isinstance(f, RelatedObject):
label = f.opts.verbose_name
else:
label = f.verbose_name
value_a = f.value_from_object(obj_a)
value_b = f.value_from_object(obj_b)
is_diff = value_a != value_b
if (
type(value_a) in (list, tuple)
and type(value_b) in (list, tuple)
and len(value_a) == len(value_b)
and is_diff
):
is_diff = False
for i in xrange(len(value_a)):
if value_a[i] != value_a[i]:
is_diff = True
break
if type(value_a) is QuerySet and type(value_b) is QuerySet:
is_diff = list(value_a) != list(value_b)
diffs.append((label, detail_a.get_field_result(f.name).val, detail_b.get_field_result(f.name).val, is_diff))
context = super(RevisionListView, self).get_context()
context.update(
{
"object": self.obj,
"opts": self.opts,
"version_a": version_a,
"version_b": version_b,
"revision_a_url": self.model_admin_url("revision", quote(version_a.object_id), version_a.id),
"revision_b_url": self.model_admin_url("revision", quote(version_b.object_id), version_b.id),
"diffs": diffs,
}
)
return TemplateResponse(
self.request,
self.revision_diff_template or self.get_template_list("views/revision_diff.html"),
context,
current_app=self.admin_site.name,
)
开发者ID:rzg,项目名称:django-xadmin,代码行数:72,代码来源:xversion.py
示例12: post
def post(self, request, object_id, *args, **kwargs):
object_id = unquote(object_id)
self.obj = self.get_object(object_id)
if not self.has_change_permission(self.obj):
raise PermissionDenied
params = self.request.POST
if 'version_a' not in params or 'version_b' not in params:
self.message_user(_("Must select two versions."), 'error')
return self.get_response()
version_a_id = params['version_a']
version_b_id = params['version_b']
if version_a_id == version_b_id:
self.message_user(
_("Please select two different versions."), 'error')
return self.get_response()
version_a = get_object_or_404(Version, pk=version_a_id)
version_b = get_object_or_404(Version, pk=version_b_id)
diffs = []
obj_a, detail_a = self.get_version_object(version_a)
obj_b, detail_b = self.get_version_object(version_b)
for f in (self.opts.fields + self.opts.many_to_many):
if is_related_field2(f):
label = f.opts.verbose_name
else:
label = f.verbose_name
value_a = f.value_from_object(obj_a)
value_b = f.value_from_object(obj_b)
is_diff = value_a != value_b
if type(value_a) in (list, tuple) and type(value_b) in (list, tuple) \
and len(value_a) == len(value_b) and is_diff:
is_diff = False
for i in xrange(len(value_a)):
if value_a[i] != value_a[i]:
is_diff = True
break
if type(value_a) is QuerySet and type(value_b) is QuerySet:
is_diff = list(value_a) != list(value_b)
diffs.append((label, detail_a.get_field_result(
f.name).val, detail_b.get_field_result(f.name).val, is_diff))
context = super(RevisionListView, self).get_context()
context.update({
'object': self.obj,
'opts': self.opts,
'version_a': version_a,
'version_b': version_b,
'revision_a_url': self.model_admin_url('revision', quote(version_a.object_id), version_a.id),
'revision_b_url': self.model_admin_url('revision', quote(version_b.object_id), version_b.id),
'diffs': diffs
})
return TemplateResponse(
self.request, self.revision_diff_template or self.get_template_list('views/revision_diff.html'),
context)
开发者ID:116pythonZS,项目名称:imooc-django,代码行数:65,代码来源:xversion.py
注:本文中的xadmin.util.unquote函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论