本文整理汇总了Python中wagtail.core.models.UserPagePermissionsProxy.can_publish_pages方法的典型用法代码示例。如果您正苦于以下问题:Python UserPagePermissionsProxy.can_publish_pages方法的具体用法?Python UserPagePermissionsProxy.can_publish_pages怎么用?Python UserPagePermissionsProxy.can_publish_pages使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类wagtail.core.models.UserPagePermissionsProxy
的用法示例。
在下文中一共展示了UserPagePermissionsProxy.can_publish_pages方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_editable_pages_for_non_editing_user
# 需要导入模块: from wagtail.core.models import UserPagePermissionsProxy [as 别名]
# 或者: from wagtail.core.models.UserPagePermissionsProxy import can_publish_pages [as 别名]
def test_editable_pages_for_non_editing_user(self):
user = get_user_model().objects.get(username='admin_only_user')
homepage = Page.objects.get(url_path='/home/')
christmas_page = EventPage.objects.get(url_path='/home/events/christmas/')
unpublished_event_page = EventPage.objects.get(url_path='/home/events/tentative-unpublished-event/')
someone_elses_event_page = EventPage.objects.get(url_path='/home/events/someone-elses-event/')
user_perms = UserPagePermissionsProxy(user)
editable_pages = user_perms.editable_pages()
can_edit_pages = user_perms.can_edit_pages()
publishable_pages = user_perms.publishable_pages()
can_publish_pages = user_perms.can_publish_pages()
self.assertFalse(editable_pages.filter(id=homepage.id).exists())
self.assertFalse(editable_pages.filter(id=christmas_page.id).exists())
self.assertFalse(editable_pages.filter(id=unpublished_event_page.id).exists())
self.assertFalse(editable_pages.filter(id=someone_elses_event_page.id).exists())
self.assertFalse(can_edit_pages)
self.assertFalse(publishable_pages.filter(id=homepage.id).exists())
self.assertFalse(publishable_pages.filter(id=christmas_page.id).exists())
self.assertFalse(publishable_pages.filter(id=unpublished_event_page.id).exists())
self.assertFalse(publishable_pages.filter(id=someone_elses_event_page.id).exists())
self.assertFalse(can_publish_pages)
示例2: register_account_notification_preferences
# 需要导入模块: from wagtail.core.models import UserPagePermissionsProxy [as 别名]
# 或者: from wagtail.core.models.UserPagePermissionsProxy import can_publish_pages [as 别名]
def register_account_notification_preferences(request):
user_perms = UserPagePermissionsProxy(request.user)
if user_perms.can_edit_pages() or user_perms.can_publish_pages():
return {
'url': reverse('wagtailadmin_account_notification_preferences'),
'label': _('Notification preferences'),
'help_text': _('Choose which email notifications to receive.'),
}
示例3: __init__
# 需要导入模块: from wagtail.core.models import UserPagePermissionsProxy [as 别名]
# 或者: from wagtail.core.models.UserPagePermissionsProxy import can_publish_pages [as 别名]
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
user_perms = UserPagePermissionsProxy(self.instance.user)
if not user_perms.can_publish_pages():
del self.fields['submitted_notifications']
if not user_perms.can_edit_pages():
del self.fields['approved_notifications']
del self.fields['rejected_notifications']
示例4: account
# 需要导入模块: from wagtail.core.models import UserPagePermissionsProxy [as 别名]
# 或者: from wagtail.core.models.UserPagePermissionsProxy import can_publish_pages [as 别名]
def account(request):
user_perms = UserPagePermissionsProxy(request.user)
show_notification_preferences = user_perms.can_edit_pages() or user_perms.can_publish_pages()
return render(request, 'wagtailadmin/account/account.html', {
'show_change_password': password_management_enabled() and request.user.has_usable_password(),
'show_notification_preferences': show_notification_preferences,
'show_preferred_language_preferences': len(get_available_admin_languages()) > 1
})