add "city"
This commit is contained in:
parent
762de74ffa
commit
a7d1fd83ef
|
@ -7,7 +7,7 @@ class SignupAdmin(admin.ModelAdmin):
|
||||||
_all_fields = ["email", "created_at", "anonymized_ip", "user_agent"]
|
_all_fields = ["email", "created_at", "anonymized_ip", "user_agent"]
|
||||||
|
|
||||||
date_hierarchy = "created_at"
|
date_hierarchy = "created_at"
|
||||||
list_display = ["email", "created_at", "anonymized_ip", "user_agent"] + ["country_code"]
|
list_display = ["email", "created_at", "anonymized_ip", "user_agent"] + ["place_name"]
|
||||||
list_filter = ["email", "user_agent"]
|
list_filter = ["email", "user_agent"]
|
||||||
ordering = ["created_at"]
|
ordering = ["created_at"]
|
||||||
readonly_fields = _all_fields + ["country_name"]
|
readonly_fields = _all_fields + ["place_name"]
|
||||||
|
|
|
@ -17,14 +17,13 @@ class Signup(models.Model):
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
return self.email
|
return self.email
|
||||||
|
|
||||||
def _country(self):
|
def _city(self):
|
||||||
try:
|
try:
|
||||||
return GeoIP2().country(self.anonymized_ip)
|
return GeoIP2().city(self.anonymized_ip)
|
||||||
except geoip2.errors.AddressNotFoundError:
|
except geoip2.errors.AddressNotFoundError:
|
||||||
return {}
|
return None
|
||||||
|
|
||||||
def country_name(self):
|
def place_name(self):
|
||||||
return self._country().get("country_name", "??")
|
if city := self._city():
|
||||||
|
return "{}, {}".format(city["city"], city["country_name"])
|
||||||
def country_code(self):
|
return "??"
|
||||||
return self._country().get("country_code", "??")
|
|
||||||
|
|
Loading…
Reference in New Issue