Flask - запрос sqlite к javascript - PullRequest
0 голосов
/ 05 февраля 2020

Я пытаюсь использовать flask -Sqlite для представления данных через API Google Maps.

В настоящее время в моем файле views.py у меня есть этот метод:

@app.route('/googlemap.html', methods=['POST'])
def map():
    if request.method == 'POST':
        conn = sqlite3.connect(database.db)
        cur = conn.cursor()
        c_lat = cur.execute("SELECT latitude FROM table")
        c_long = cur.execute("SELECT longitude FROM table")
        return render_template(content=render_template('googlemap.html', lat=c_lat.fetchall(), long=c_long.fetchall()))

В примере API Google Maps они вручную добавляют каждую точку

function getPoints() {
        return [
          new google.maps.LatLng(37.782551, -122.445368),
          new google.maps.LatLng(37.782745, -122.444586)
        ];

Но я хочу запросить все данные и добавить каждую широту и долготу из базы данных в мою карту Google. html file

<script>
function getPoints() {
          var points = [];
          //Add each latitude into points array and return and array off all points
        return points
      }
</script>

Но я не знаю, как добавить lat и long переменная, которую я получил в файле views.py в javascript часть кода

Ответы [ 2 ]

0 голосов
/ 05 февраля 2020

Вы можете сделать это, чтобы сопоставить результаты запроса к базе данных с JavaScript.

<script type="text/javascript">
  var lats = {{ lat|tojson }};
  var longs = {{ longs|tojson}};
</script>
0 голосов
/ 05 февраля 2020

Поскольку вы не используете ajax, вам необходимо сначала добавить данные в какой-либо тег. Обычно мы добавляем метатег в файл HTML

. Например:

<meta id="map-data data-lat="{{lat}}" data-long="{{long}}">

Теперь в вашем JS коде вы можете использовать jquery для доступа к этим данным

var some_data = $('#my-data').data();

Теперь вы можете напечатать some_data в консоли и поставить галочку

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...