当前位置: 首页>>代码示例>>Python>>正文


Python models.PrivateLink类代码示例

本文整理汇总了Python中website.models.PrivateLink的典型用法代码示例。如果您正苦于以下问题:Python PrivateLink类的具体用法?Python PrivateLink怎么用?Python PrivateLink使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


在下文中一共展示了PrivateLink类的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: wrapped

        def wrapped(*args, **kwargs):
            response = None
            _inject_nodes(kwargs)
            node = kwargs['node']

            kwargs['auth'] = Auth.from_kwargs(request.args.to_dict(), kwargs)
            user = kwargs['auth'].user

            key = request.args.get('view_only', '').strip('/')
            #if not login user check if the key is valid or the other privilege

            kwargs['auth'].private_key = key
            link_anon = None
            if not include_view_only_anon:
                from website.models import PrivateLink
                try:
                    link_anon = PrivateLink.find_one(Q('key', 'eq', key)).anonymous
                except ModularOdmException:
                    pass

            if not node.is_public or not include_public:
                if not include_view_only_anon and link_anon:
                    if not check_can_access(node=node, user=user):
                        raise HTTPError(http.UNAUTHORIZED)
                elif key not in node.private_link_keys_active:
                    if not check_can_access(node=node, user=user, key=key):
                        redirect_url = check_key_expired(key=key, node=node, url=request.url)
                        if request.headers.get('Content-Type') == 'application/json':
                            raise HTTPError(http.UNAUTHORIZED)
                        else:
                            response = redirect(cas.get_login_url(redirect_url))

            return response or func(*args, **kwargs)
开发者ID:AllisonLBowers,项目名称:osf.io,代码行数:33,代码来源:decorators.py

示例2: project_private_link_edit

def project_private_link_edit(auth, **kwargs):
    new_name = request.json.get('value', '')
    private_link_id = request.json.get('pk', '')
    private_link = PrivateLink.load(private_link_id)
    if private_link:
        private_link.name = new_name
        private_link.save()
开发者ID:GageGaskins,项目名称:osf.io,代码行数:7,代码来源:node.py

示例3: get_object

 def get_object(self):
     link_id = self.kwargs['link_id']
     view_only_link = PrivateLink.load(link_id)
     return {
         'data': [Node.load(node) for node in view_only_link.nodes],
         'self': view_only_link
     }
开发者ID:alexschiller,项目名称:osf.io,代码行数:7,代码来源:views.py

示例4: remove_private_link

def remove_private_link(*args, **kwargs):
    link_id = request.json['private_link_id']

    try:
        link = PrivateLink.load(link_id)
        link.is_deleted = True
        link.save()
    except ModularOdmException:
        raise HTTPError(http.NOT_FOUND)
开发者ID:GageGaskins,项目名称:osf.io,代码行数:9,代码来源:node.py


注:本文中的website.models.PrivateLink类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。