本文整理汇总了Python中weblate.trans.views.helper.get_project函数的典型用法代码示例。如果您正苦于以下问题:Python get_project函数的具体用法?Python get_project怎么用?Python get_project使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了get_project函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的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)
示例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)
示例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,
}
)
示例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)
示例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)
示例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)
示例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)
示例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
示例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
)
示例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)
示例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)
示例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)
示例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)
示例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,
},
)
示例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)