Flask: Firebase OrderBy должен быть допустимым путем в кодировке JSON

#python #flask

#python #flask

Вопрос:

Я использую Flask и Firebase.

Я отправляю некоторые значения в базу данных и хочу получить, например, некоторые данные, идентификатор которых = 1. Итак, я хочу написать несколько сложных запросов.

Вот мое приложение.маршрут :

 @app.route('/satis', methods=['GET', 'POST'])
def satis():
    if (request.method == 'POST'):
        users_by_score = db.child("names").order_by_child("id").equal_to(2).get()
        us=users_by_score
        return render_template('satis.html', u=us.val())
    return render_template('satis.html')
 

Вот index.html

 <div class="container-fluid">
        {% for l in u %}
            <ul class="list-group">
                <li class="list-group-item">
                    <h4>{{l}}</h4>
                </li>
            </ul>
        {% endfor %}
    </div>
 

И это ошибка :

  "error" : "orderBy must be a valid JSON encoded path"
 

Это моя база данных Firebase в реальном времени :

введите описание изображения здесь

Ответ №1:

Я использую flutter с firebase, поэтому не уверен, решает ли это проблему, но при передаче поля OrderBy оно должно быть в двойных кавычках в результирующем URL. например:

https://dinosaur-facts.firebaseio.com/dinosaurs.json?orderBy =»высота»amp;startAt=3amp;print=красиво

Здесь вы можете указать высоту с помощью экранирующего шаблона, такого как «»высота «»