Я отправляю координаты из моего файла javascript в файл python, чтобы они могли быть сохранены в БД.
Мне удается напечатать мои шнуры в оболочке python, поэтому я знаю, что кнопка работает, но затем она снова запускается и вылетает -
json.decoder.JSONDecodeError
Expecting value: line 1 column 1 (char 0)
Похоже, что запрос POST выполняется несколько раз, он был успешным и отправляет мои данные в оболочку в первый раз.
Ниже приведен мой код на Python для получения координат:
def create(request):
form = CreateForm()
print("try")
if request.method == 'POST':
data = json.loads(request.data)
print(data)
lat = data.get('lat')
long = data.get('long')
print(lat)
print(long)
post = Items(restaurant=form.restaurant.data, content=form.content.data, location_lat=lat, location_long=long )
db.session.add(post)
db.session.commit()
flash('Your post has been created!', 'success')
return redirect(url_for('view_all'))
return render_template('create.html', title='New Post',
form=form, legend='New Post')
Нет, код БД читается, потому что ошибка произошла раньше.
Мой код JS AJAX:
$.ajax({
url: '/create',
type: 'POST',
data: JSON.stringify({ lat: stored_lat, long: stored_long }),
contentType: "application/json; charset=utf-8",
dataType: "json",
error: function(error){
console.log(error);
}
});
Сообщение об ошибке также регистрируется в console.log - однако я не понимаю всех этих ошибок, когда оболочка изначально печатает данные, которые я хочу использовать.
Спасибо за любую помощь или предложения. Извините, если это плохо сформулировано.