diff options
author | CoprDistGit <infra@openeuler.org> | 2023-05-05 10:46:40 +0000 |
---|---|---|
committer | CoprDistGit <infra@openeuler.org> | 2023-05-05 10:46:40 +0000 |
commit | 3012a263b2cceff5413c7a2a60dce2d343ae35c9 (patch) | |
tree | 7dadf8294f0297f3e6e4b26191346bfc566efc50 | |
parent | 979a16f1924d9eb63d48c8146821f7bc4846e1c8 (diff) |
automatic import of python-django-google-mapsopeneuler20.03
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | python-django-google-maps.spec | 235 | ||||
-rw-r--r-- | sources | 1 |
3 files changed, 237 insertions, 0 deletions
@@ -0,0 +1 @@ +/django-google-maps-0.13.0.tar.gz diff --git a/python-django-google-maps.spec b/python-django-google-maps.spec new file mode 100644 index 0000000..da4a25a --- /dev/null +++ b/python-django-google-maps.spec @@ -0,0 +1,235 @@ +%global _empty_manifest_terminate_build 0 +Name: python-django-google-maps +Version: 0.13.0 +Release: 1 +Summary: Plugs google maps V3 api into Django admin. +License: BSD License +URL: https://github.com/madisona/django-google-maps +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/1f/b2/946e9d00b0d85dc27a62854e336856bddb285a7773f22360ca05a3999006/django-google-maps-0.13.0.tar.gz +BuildArch: noarch + +Requires: python3-Django + +%description +- include the ``django_google_maps`` app in your ``settings.py`` +- Add your Google Maps API Key in your ``settings.py`` as + ``GOOGLE_MAPS_API_KEY`` +- create a model that has both an address field and geolocation field + from django.db import models + from django_google_maps import fields as map_fields + class Rental(models.Model): + address = map_fields.AddressField(max_length=200) + geolocation = map_fields.GeoLocationField(max_length=100) +- in the ``admin.py`` include the following as a formfield_override + from django.contrib import admin + from django_google_maps import widgets as map_widgets + from django_google_maps import fields as map_fields + class RentalAdmin(admin.ModelAdmin): + formfield_overrides = { + map_fields.AddressField: {'widget': map_widgets.GoogleMapsAddressWidget}, + } +- To change the map type (``hybrid`` by default), you can add an html + attribute on the ``AddressField`` widget. The list of allowed values + is: ``hybrid``, ``roadmap``, ``satellite``, ``terrain`` + from django.contrib import admin + from django_google_maps import widgets as map_widgets + from django_google_maps import fields as map_fields + class RentalAdmin(admin.ModelAdmin): + formfield_overrides = { + map_fields.AddressField: { + 'widget': map_widgets.GoogleMapsAddressWidget(attrs={'data-map-type': 'roadmap'})}, + } +- To change the autocomplete options, you can add an html attribute on + the ``AddressField`` widget. See + https://developers.google.com/maps/documentation/javascript/places-autocomplete#add_autocomplete + for a list of available options + import json from django.contrib import admin + from django_google_maps import widgets as map_widgets + from django_google_maps import fields as map_fields + class RentalAdmin(admin.ModelAdmin): formfield_overrides = { + map_fields.AddressField: { ‘widget’: + map_widgets.GoogleMapsAddressWidget(attrs={ + ‘data-autocomplete-options’: json.dumps({ ‘types’: [‘geocode’, + ‘establishment’], ‘componentRestrictions’: { + 'country': 'us' + } + }) + }) + }, + } +That should be all you need to get started. +I also like to make the geolocation field readonly in the admin so a user +(myself) doesn't accidentally change it to a nonsensical value. There is +validation on the field so you can't enter an incorrect value, but you could +enter something that is not even close to the address you intended. +When you're displaying the address back to the user, just request the map +using the geocoordinates that were saved in your model. Maybe sometime when +I get around to it I'll see if I can create a method that will build that +into the model. + +%package -n python3-django-google-maps +Summary: Plugs google maps V3 api into Django admin. +Provides: python-django-google-maps +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-django-google-maps +- include the ``django_google_maps`` app in your ``settings.py`` +- Add your Google Maps API Key in your ``settings.py`` as + ``GOOGLE_MAPS_API_KEY`` +- create a model that has both an address field and geolocation field + from django.db import models + from django_google_maps import fields as map_fields + class Rental(models.Model): + address = map_fields.AddressField(max_length=200) + geolocation = map_fields.GeoLocationField(max_length=100) +- in the ``admin.py`` include the following as a formfield_override + from django.contrib import admin + from django_google_maps import widgets as map_widgets + from django_google_maps import fields as map_fields + class RentalAdmin(admin.ModelAdmin): + formfield_overrides = { + map_fields.AddressField: {'widget': map_widgets.GoogleMapsAddressWidget}, + } +- To change the map type (``hybrid`` by default), you can add an html + attribute on the ``AddressField`` widget. The list of allowed values + is: ``hybrid``, ``roadmap``, ``satellite``, ``terrain`` + from django.contrib import admin + from django_google_maps import widgets as map_widgets + from django_google_maps import fields as map_fields + class RentalAdmin(admin.ModelAdmin): + formfield_overrides = { + map_fields.AddressField: { + 'widget': map_widgets.GoogleMapsAddressWidget(attrs={'data-map-type': 'roadmap'})}, + } +- To change the autocomplete options, you can add an html attribute on + the ``AddressField`` widget. See + https://developers.google.com/maps/documentation/javascript/places-autocomplete#add_autocomplete + for a list of available options + import json from django.contrib import admin + from django_google_maps import widgets as map_widgets + from django_google_maps import fields as map_fields + class RentalAdmin(admin.ModelAdmin): formfield_overrides = { + map_fields.AddressField: { ‘widget’: + map_widgets.GoogleMapsAddressWidget(attrs={ + ‘data-autocomplete-options’: json.dumps({ ‘types’: [‘geocode’, + ‘establishment’], ‘componentRestrictions’: { + 'country': 'us' + } + }) + }) + }, + } +That should be all you need to get started. +I also like to make the geolocation field readonly in the admin so a user +(myself) doesn't accidentally change it to a nonsensical value. There is +validation on the field so you can't enter an incorrect value, but you could +enter something that is not even close to the address you intended. +When you're displaying the address back to the user, just request the map +using the geocoordinates that were saved in your model. Maybe sometime when +I get around to it I'll see if I can create a method that will build that +into the model. + +%package help +Summary: Development documents and examples for django-google-maps +Provides: python3-django-google-maps-doc +%description help +- include the ``django_google_maps`` app in your ``settings.py`` +- Add your Google Maps API Key in your ``settings.py`` as + ``GOOGLE_MAPS_API_KEY`` +- create a model that has both an address field and geolocation field + from django.db import models + from django_google_maps import fields as map_fields + class Rental(models.Model): + address = map_fields.AddressField(max_length=200) + geolocation = map_fields.GeoLocationField(max_length=100) +- in the ``admin.py`` include the following as a formfield_override + from django.contrib import admin + from django_google_maps import widgets as map_widgets + from django_google_maps import fields as map_fields + class RentalAdmin(admin.ModelAdmin): + formfield_overrides = { + map_fields.AddressField: {'widget': map_widgets.GoogleMapsAddressWidget}, + } +- To change the map type (``hybrid`` by default), you can add an html + attribute on the ``AddressField`` widget. The list of allowed values + is: ``hybrid``, ``roadmap``, ``satellite``, ``terrain`` + from django.contrib import admin + from django_google_maps import widgets as map_widgets + from django_google_maps import fields as map_fields + class RentalAdmin(admin.ModelAdmin): + formfield_overrides = { + map_fields.AddressField: { + 'widget': map_widgets.GoogleMapsAddressWidget(attrs={'data-map-type': 'roadmap'})}, + } +- To change the autocomplete options, you can add an html attribute on + the ``AddressField`` widget. See + https://developers.google.com/maps/documentation/javascript/places-autocomplete#add_autocomplete + for a list of available options + import json from django.contrib import admin + from django_google_maps import widgets as map_widgets + from django_google_maps import fields as map_fields + class RentalAdmin(admin.ModelAdmin): formfield_overrides = { + map_fields.AddressField: { ‘widget’: + map_widgets.GoogleMapsAddressWidget(attrs={ + ‘data-autocomplete-options’: json.dumps({ ‘types’: [‘geocode’, + ‘establishment’], ‘componentRestrictions’: { + 'country': 'us' + } + }) + }) + }, + } +That should be all you need to get started. +I also like to make the geolocation field readonly in the admin so a user +(myself) doesn't accidentally change it to a nonsensical value. There is +validation on the field so you can't enter an incorrect value, but you could +enter something that is not even close to the address you intended. +When you're displaying the address back to the user, just request the map +using the geocoordinates that were saved in your model. Maybe sometime when +I get around to it I'll see if I can create a method that will build that +into the model. + +%prep +%autosetup -n django-google-maps-0.13.0 + +%build +%py3_build + +%install +%py3_install +install -d -m755 %{buildroot}/%{_pkgdocdir} +if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi +if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi +if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi +if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi +pushd %{buildroot} +if [ -d usr/lib ]; then + find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/lib64 ]; then + find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/bin ]; then + find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/sbin ]; then + find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst +fi +touch doclist.lst +if [ -d usr/share/man ]; then + find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst +fi +popd +mv %{buildroot}/filelist.lst . +mv %{buildroot}/doclist.lst . + +%files -n python3-django-google-maps -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Fri May 05 2023 Python_Bot <Python_Bot@openeuler.org> - 0.13.0-1 +- Package Spec generated @@ -0,0 +1 @@ +6c607091698693b2a37d47d50f9dbf0d django-google-maps-0.13.0.tar.gz |