Я создал Flask проект:
/app
/access object
/search
/template
В «объекте доступа» я сделал скрипт с pysorl, который вызывает базу данных Solr, например:
def search_string(self, user_input):
solr = pysolr.Solr('https://solrdb/collection')
results = solr.search(user_input)
num_results = results.hits
return results, num_results
Это предназначено, чтобы дать мне результаты и количество результатов из базы данных.
Затем в представлении поиска у меня есть это до сих пор:
def search_str():
rv = "" #rv: short for return value
if request.method == "POST":
print("post")
req = "POST"
if request.form["action"] == "Search":
user_input = request.form["user_input"]
rv = user_input
data = access_object.search_string(rv)
Как я могу получить доступ к "num_results" и "results" по отдельности, дав один и тот же user_input в шаблоне? Я бы сделал что-то подобное в шаблоне "поиск. html"
<div class="container">
<h2>Total results: {{ num_data }}</h2>
{% for r in data %}
<p> {{ r }}</p>
{% endfor %}
<br>