Did anyone know how to handle python geocoder osm error if user enter invalid city name? I am using it in Django. When user input valid city name it saving to my database and showing on map but I can't stop user to put invalid city name and prevent saving to my database. here is part of my code:

def Distance_view(request):
    if request.method == 'POST':
        form = Search(request.POST)
        if form.is_valid():
        form = Search()

    address = FindDistance.objects.all().last()
    location = geocoder.osm(address)

right now if user give valid address then it showing on map but if user give wrong address it's saving to my database and raise this error. After deleting the wrong address from my database it's start working. How to prevent user to give wrong address and prevent saving to my database.

"ValueError at /map

Location should consist of two numerical values, but None of type <class 'NoneType'> is not convertible to float."

asked 08 Apr, 16:07

tusar25's gravatar image

accept rate: 0%

edited 08 Apr, 16:09

You would have to check that your location variable has the right type of data before saving it to a database. As your geocoder probably uses nominatim, it would return an empty result if the city name entered can't be found.

permanent link

answered 09 Apr, 08:35

Spiekerooger's gravatar image

accept rate: 17%

Your answer
toggle preview

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here



Answers and Comments

Markdown Basics

  • *italic* or _italic_
  • **bold** or __bold__
  • link:[text](http://url.com/ "title")
  • image?![alt text](/path/img.jpg "title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported

Question tags:


question asked: 08 Apr, 16:07

question was seen: 256 times

last updated: 09 Apr, 08:35

powered by OSQA