本文整理汇总了Python中weblate.trans.forms.SearchForm.get_search_query方法的典型用法代码示例。如果您正苦于以下问题:Python SearchForm.get_search_query方法的具体用法?Python SearchForm.get_search_query怎么用?Python SearchForm.get_search_query使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类weblate.trans.forms.SearchForm
的用法示例。
在下文中一共展示了SearchForm.get_search_query方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: search
# 需要导入模块: from weblate.trans.forms import SearchForm [as 别名]
# 或者: from weblate.trans.forms.SearchForm import get_search_query [as 别名]
def search(translation, request):
"""Perform search or returns cached search results."""
# Possible new search
form = SearchForm(request.GET)
# Process form
form_valid = form.is_valid()
if not form_valid:
show_form_errors(request, form)
search_result = {
'form': form,
'offset': form.cleaned_data.get('offset', 1),
'checksum': form.cleaned_data.get('checksum'),
}
search_url = form.urlencode()
session_key = 'search_{0}_{1}'.format(translation.pk, search_url)
if (session_key in request.session and
'offset' in request.GET and
'items' in request.session[session_key]):
search_result.update(request.session[session_key])
return search_result
allunits = translation.unit_set.search(
form.cleaned_data,
translation=translation,
)
search_query = form.get_search_query() if form_valid else ''
name = form.get_name() if form_valid else ''
# Grab unit IDs
unit_ids = list(allunits.values_list('id', flat=True))
# Check empty search results
if not unit_ids:
messages.warning(request, _('No string matched your search!'))
return redirect(translation)
# Remove old search results
cleanup_session(request.session)
store_result = {
'query': search_query,
'url': search_url,
'items': form.items(),
'key': session_key,
'name': force_text(name),
'ids': unit_ids,
'ttl': int(time.time()) + 86400,
}
request.session[session_key] = store_result
search_result.update(store_result)
return search_result
示例2: search
# 需要导入模块: from weblate.trans.forms import SearchForm [as 别名]
# 或者: from weblate.trans.forms.SearchForm import get_search_query [as 别名]
def search(translation, request):
"""Perform search or returns cached search results."""
# Possible new search
search_form = SearchForm(request.GET)
review_form = ReviewForm(request.GET)
# Process form
if 'date' in request.GET:
if review_form.is_valid():
form = review_form
else:
show_form_errors(request, review_form)
# Use blank form
form = SearchForm([])
form.is_valid()
elif search_form.is_valid():
form = search_form
else:
show_form_errors(request, search_form)
# Use blank form
form = SearchForm([])
form.is_valid()
search_result = {
'form': form,
'offset': form.cleaned_data['offset'],
'checksum': form.cleaned_data['checksum'],
}
search_url = form.urlencode()
session_key = 'search_{0}_{1}'.format(translation.pk, search_url)
if session_key in request.session:
search_result.update(request.session[session_key])
return search_result
if form.cleaned_data['type'] == 'review':
allunits = translation.unit_set.review(
form.cleaned_data['date'],
request.user
)
else:
allunits = translation.unit_set.search(
translation,
form.cleaned_data,
)
if form.cleaned_data['type'] == 'random':
allunits = allunits[:25]
search_query = form.get_search_query()
name = form.get_name()
# Grab unit IDs
unit_ids = list(allunits.values_list('id', flat=True))
# Check empty search results
if len(unit_ids) == 0:
messages.warning(request, _('No string matched your search!'))
return redirect(translation)
# Remove old search results
cleanup_session(request.session)
store_result = {
'query': search_query,
'url': search_url,
'key': session_key,
'name': force_text(name),
'ids': unit_ids,
'ttl': int(time.time()) + 86400,
}
request.session[session_key] = store_result
search_result.update(store_result)
return search_result