• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Python helper.get_project函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

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



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

示例1: push_project

def push_project(request, project):
    obj = get_project(request, project)

    if not request.user.has_perm('vcs.push', obj):
        raise PermissionDenied()

    return perform_push(request, obj)
开发者ID:daleathan,项目名称:weblate,代码行数:7,代码来源:git.py


示例2: reset_project

def reset_project(request, project):
    obj = get_project(request, project)

    if not request.user.has_perm('vcs.reset', obj):
        raise PermissionDenied()

    return perform_reset(request, obj)
开发者ID:daleathan,项目名称:weblate,代码行数:7,代码来源:git.py


示例3: change_project

def change_project(request, project):
    obj = get_project(request, project)

    if not request.user.has_perm('project.edit', obj):
        raise Http404()

    if request.method == 'POST':
        settings_form = ProjectSettingsForm(request.POST, instance=obj)
        if settings_form.is_valid():
            settings_form.save()
            messages.success(request, _('Settings saved'))
            return redirect('settings', project=obj.slug)
        else:
            messages.error(
                request,
                _('Invalid settings, please check the form for errors!')
            )
    else:
        settings_form = ProjectSettingsForm(instance=obj)

    return render(
        request,
        'project-settings.html',
        {
            'object': obj,
            'settings_form': settings_form,
        }
    )
开发者ID:daleathan,项目名称:weblate,代码行数:28,代码来源:settings.py


示例4: update_project

def update_project(request, project):
    obj = get_project(request, project)

    if not request.user.has_perm('vcs.update', obj):
        raise PermissionDenied()

    return perform_update(request, obj)
开发者ID:daleathan,项目名称:weblate,代码行数:7,代码来源:git.py


示例5: push_project

def push_project(request, project):
    obj = get_project(request, project)

    if obj.do_push(request):
        messages.success(request, _('All repositories were pushed.'))

    return redirect(obj)
开发者ID:JDGrimes,项目名称:weblate,代码行数:7,代码来源:git.py


示例6: update_project

def update_project(request, project):
    obj = get_project(request, project)

    if obj.do_update(request, method=request.GET.get('method', None)):
        messages.success(request, _('All repositories were updated.'))

    return redirect(obj)
开发者ID:JDGrimes,项目名称:weblate,代码行数:7,代码来源:git.py


示例7: commit_project

def commit_project(request, project):
    obj = get_project(request, project)
    obj.commit_pending(request)

    messages.success(request, _('All pending translations were committed.'))

    return redirect(obj)
开发者ID:JDGrimes,项目名称:weblate,代码行数:7,代码来源:git.py


示例8: download_dictionary

def download_dictionary(request, project, lang):
    """
    Exports dictionary into various formats.
    """
    prj = get_project(request, project)
    lang = get_object_or_404(Language, code=lang)

    # Parse parameters
    export_format = None
    if "format" in request.GET:
        export_format = request.GET["format"]
    if export_format not in ("csv", "po", "tbx"):
        export_format = "csv"

    # Grab all words
    words = Dictionary.objects.filter(project=prj, language=lang).order_by("source")

    # Translate toolkit based export
    if export_format in ("po", "tbx"):
        return download_dictionary_ttkit(export_format, prj, lang, words)

    # Manually create CSV file
    response = HttpResponse(content_type="text/csv; charset=utf-8")
    filename = "dictionary-%s-%s.csv" % (prj.slug, lang.code)
    response["Content-Disposition"] = "attachment; filename=%s" % filename

    writer = csv.writer(response)

    # Add header
    writer.writerow(("source", "target"))

    for word in words.iterator():
        writer.writerow((word.source.encode("utf8"), word.target.encode("utf8")))

    return response
开发者ID:nrasic,项目名称:weblate,代码行数:35,代码来源:dictionary.py


示例9: delete_dictionary

def delete_dictionary(request, project, lang, pk):
    prj = get_project(request, project)
    if not request.user.has_perm('glossary.delete', prj):
        raise PermissionDenied()

    lang = get_object_or_404(Language, code=lang)
    word = get_object_or_404(
        Dictionary,
        project=prj,
        language=lang,
        id=pk
    )

    word.delete()

    params = {}
    for param in ('letter', 'limit', 'page'):
        if param in request.POST:
            params[param] = request.POST[param]

    if params:
        param = '?' + urlencode(params)
    else:
        param = ''

    return redirect_param(
        'show_dictionary',
        param,
        project=prj.slug,
        lang=lang.code
    )
开发者ID:daleathan,项目名称:weblate,代码行数:31,代码来源:dictionary.py


示例10: reset_project

def reset_project(request, project):
    obj = get_project(request, project)

    if not can_reset_translation(request.user, obj):
        raise PermissionDenied()

    return perform_reset(request, obj)
开发者ID:saily,项目名称:weblate,代码行数:7,代码来源:git.py


示例11: push_project

def push_project(request, project):
    obj = get_project(request, project)

    if obj.do_push(request):
        messages.info(request, _("All repositories were pushed."))

    return redirect(obj)
开发者ID:barmi,项目名称:weblate,代码行数:7,代码来源:git.py


示例12: commit_project

def commit_project(request, project):
    obj = get_project(request, project)
    obj.commit_pending(request)

    messages.info(request, _("All pending translations were committed."))

    return redirect(obj)
开发者ID:barmi,项目名称:weblate,代码行数:7,代码来源:git.py


示例13: update_project

def update_project(request, project):
    obj = get_project(request, project)

    if obj.do_update(request):
        messages.info(request, _("All repositories were updated."))

    return redirect(obj)
开发者ID:barmi,项目名称:weblate,代码行数:7,代码来源:git.py


示例14: git_status_project

def git_status_project(request, project):
    obj = get_project(request, project)

    if not can_see_repository_status(request.user, obj):
        raise PermissionDenied()

    statuses = []
    included = set()

    not_linked = obj.subproject_set.exclude(repo__startswith="weblate://")
    linked = obj.subproject_set.filter(repo__startswith="weblate://")

    for subproject in not_linked:
        statuses.append((subproject.__unicode__(), subproject.repository.status))
        included.add(subproject.get_repo_link_url())

    for subproject in linked.exclude(repo__in=included):
        statuses.append((subproject.__unicode__(), subproject.repository.status))

    return render(
        request,
        "js/git-status.html",
        {
            "object": obj,
            "project": obj,
            "changes": Change.objects.filter(subproject__project=obj, action__in=Change.ACTIONS_REPOSITORY)[:10],
            "statuses": statuses,
        },
    )
开发者ID:harleyknd1,项目名称:weblate,代码行数:29,代码来源:js.py


示例15: reset_project

def reset_project(request, project):
    obj = get_project(request, project)

    if obj.do_reset(request):
        messages.info(request, _("All repositories have been reset."))

    return redirect(obj)
开发者ID:barmi,项目名称:weblate,代码行数:7,代码来源:git.py


示例16: add_user

def add_user(request, project):
    obj = get_project(request, project)

    form = AddUserForm(request.POST)

    if not obj.enable_acl:
        messages.error(request, _('ACL not enabled for this project!'))
    elif form.is_valid():
        try:
            user = User.objects.get(
                Q(username=form.cleaned_data['name']) |
                Q(email=form.cleaned_data['name'])
            )
            obj.add_user(user)
            messages.success(
                request, _('User has been added to this project.')
            )
        except User.DoesNotExist:
            messages.error(request, _('No matching user found!'))
        except User.MultipleObjectsReturned:
            messages.error(request, _('More users matched!'))
    else:
        messages.error(request, _('Invalid user specified!'))

    return redirect_param(
        'project',
        '#acl',
        project=obj.slug,
    )
开发者ID:addaleax,项目名称:weblate,代码行数:29,代码来源:basic.py


示例17: edit_dictionary

def edit_dictionary(request, project, lang):
    prj = get_project(request, project)
    lang = get_object_or_404(Language, code=lang)
    word = get_object_or_404(Dictionary, project=prj, language=lang, id=request.GET.get("id"))

    if request.method == "POST":
        form = WordForm(request.POST)
        if form.is_valid():
            word.edit(request, form.cleaned_data["source"], form.cleaned_data["target"])
            return redirect("show_dictionary", project=prj.slug, lang=lang.code)
    else:
        form = WordForm(initial={"source": word.source, "target": word.target})

    last_changes = Change.objects.last_changes(request.user).filter(dictionary=word)[:10]

    return render(
        request,
        "edit_dictionary.html",
        {
            "title": dict_title(prj, lang),
            "project": prj,
            "language": lang,
            "form": form,
            "last_changes": last_changes,
            "last_changes_url": urlencode({"project": prj.slug, "lang": lang.code, "glossary": 1}),
        },
    )
开发者ID:nrasic,项目名称:weblate,代码行数:27,代码来源:dictionary.py


示例18: reset_project

def reset_project(request, project):
    obj = get_project(request, project)

    if obj.do_reset(request):
        messages.success(request, _('All repositories have been reset.'))

    return redirect(obj)
开发者ID:JDGrimes,项目名称:weblate,代码行数:7,代码来源:git.py


示例19: render_widget

def render_widget(request, project, widget='287x66', color=None, lang=None,
                  extension='png'):
    # We intentionally skip ACL here to allow widget sharing
    obj = get_project(request, project, skip_acl=True)

    # Handle language parameter
    if lang is not None:
        lang = try_set_language(lang)

    # Get widget class
    try:
        widget_class = WIDGETS[widget]
    except KeyError:
        raise Http404()

    # Construct object
    widget = widget_class(obj, color, lang)

    # Redirect widget
    if hasattr(widget, 'redirect'):
        return redirect(widget.redirect())

    # Render widget
    widget.render()

    # Get image data
    data = widget.get_image()

    return HttpResponse(
        content_type=widget.content_type,
        content=data
    )
开发者ID:GabLeRoux,项目名称:weblate,代码行数:32,代码来源:widgets.py


示例20: upload_dictionary

def upload_dictionary(request, project, lang):
    prj = get_project(request, project)
    lang = get_object_or_404(Language, code=lang)

    form = DictUploadForm(request.POST, request.FILES)
    if form.is_valid():
        try:
            count = Dictionary.objects.upload(
                request,
                prj,
                lang,
                request.FILES['file'],
                form.cleaned_data['method']
            )
            import_message(
                request, count,
                _('No words to import found in file.'),
                ungettext(
                    'Imported %d word from the uploaded file.',
                    'Imported %d words from the uploaded file.',
                    count
                )
            )
        except Exception as error:
            report_error(error, sys.exc_info(), request)
            messages.error(
                request, _('File upload has failed: %s') % force_text(error)
            )
    else:
        messages.error(request, _('Failed to process form!'))
    return redirect(
        'show_dictionary',
        project=prj.slug,
        lang=lang.code
    )
开发者ID:Intrainos,项目名称:weblate,代码行数:35,代码来源:dictionary.py



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


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Python helper.get_subproject函数代码示例发布时间:2022-05-26
下一篇:
Python vcs.GitRepository类代码示例发布时间:2022-05-26
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap