I'm new to Django and have a model that takes in user address details. I'm using a CourtryField and only want to display four country options in the form on the user profile template. I believe that I can do this using "COUNTRIES_ONLY" but am not exactly sure where this setting should go. Can someone please explain how and where I can implement the "COUNTRIES_ONLY" setting.
List of countries to display.
COUNTRIES_ONLY = [
"GB",
"GG",
"IM",
"JE",
]
Model
from django_countries.fields import CountryField
class UserProfile(models.Model):
# A user profile model for maintaining default
# delivery information & order history
user = models.OneToOneField(User, on_delete=models.CASCADE)
default_full_name = models.CharField(max_length=50, null=True, blank=True)
default_email = models.EmailField(max_length=254, null=True, blank=True)
default_phone_number = models.CharField(max_length=11, null=True, blank=True)
default_street_address1 = models.CharField(max_length=80, null=True, blank=True)
default_street_address2 = models.CharField(max_length=80, null=True, blank=True)
default_town_or_city = models.CharField(max_length=40, null=True, blank=True)
default_county = models.CharField(max_length=80, null=True, blank=True)
default_postcode = models.CharField(max_length=8, null=True, blank=True)
default_country = CountryField(null=True, blank=True, default='GB')
def __str__(self):
return self.user.username