在表格提交后地理编码一个地址?

2024-05-23 20:08:58 发布

您现在位置:Python中文网/ 问答频道 /正文

试着用django的形式和django做事的方式来表达我的想法。我想创建一个基本的web表单,允许用户输入一个地址,并对该地址进行地理编码并保存到数据库中。

我创建了一个位置模型:

class Location(models.Model):
    address = models.CharField(max_length=200)
    city = models.CharField(max_length=100)
    state = models.CharField(max_length=100, null=True)
    postal_code = models.CharField(max_length=100, null=True)
    country = models.CharField(max_length=100)
    latitude = models.DecimalField(max_digits=18, decimal_places=10, null=True)
    longitude = models.DecimalField(max_digits=18, decimal_places=10, null=True)

定义了一种形式:

class LocationForm(forms.ModelForm):
    class Meta:
        model = models.Location
        exclude = ('latitude','longitude')

在我看来,我使用form.save()来保存表单。这样可以工作并将地址保存到数据库。

我创建了一个模块来对地址进行地理编码。我不确定django的工作方式是什么,但我想在我看来,在保存表单之前,我需要对地址进行地理编码并设置纬度和经度。保存前如何设置经纬度?


Tags: django数据库true表单编码models地址方式