W aplikacji django Mam następujący model:Dodawanie niestandardowego JS do pola django admina
class Appointment(models.Model):
#some other fields
#address fields
zipcode=models.CharField(max_length=5)
address=models.CharField(max_length=120)
latitude=models.FloatField()
longitude=models.FloatField()
Kiedy jestem renderingu spotkanie, jestem po prostu umieszczenie znacznika w miejscu określonym przez geograficznej i szerokość geograficzna z adresem jako tekstem, jednak potrzebuję szerokości i długości geograficznej, aby to zrobić.
Obecnie szerokość i długość geograficzną należy wprowadzić ręcznie w panelu administracyjnym, ale otwieranie Map Google/OSM, wyszukiwanie adresu i podanie szerokości i długości geograficznej to praca, której nie należy wykonywać ręcznie, więc chcesz pobrać go za pomocą interfejsu Google Maps API (geokodowanie słów kluczowych).
Idealnie, chcę przycisk "Pobierz współrzędne" obok adresu, który po naciśnięciu uruchamia żądanie geokodowania i wypełnia szerokość i długość geograficzną, gdy adres jest jednoznaczny i przedstawia mapę z wynikami i wypełnia koordynuje, gdy użytkownik kliknie właściwy znacznik.
Wiem, jak to zrobić, ale nie jestem pewien, jak powinienem wstawić znacznik i kod do zaplecza administracyjnego.
pewne rzeczy już uznanych, ale nie chcą zrobić, ponieważ nie wydaje się naturalne lub wydają się być zbyt dużo pracy dla takiego prostego zadania:
- umieszczenie kodu w opisie pola adresu w w
field_options
w klasie pochodnej odadmin.ModelAdmin
- umieszczenie adresu wszystko związane w odrębnym modelu i przy użyciu niestandardowych
form
(z osobnym szablonie - utworzyć widget adres kompletacji
- nas e GeoDjango
folderu Media jest ważny folderu, ale myślę, że jest lepiej STATIC_URL jak ten static_url = getattr (ustawienia, „STATIC_URL ','/static/') js = [static_url +' path/to/my/custom/file.js ',] – elin3t