diff --git a/accounts/migrations/0002_address_accounts_address_all_key.py b/accounts/migrations/0002_address_accounts_address_all_key.py new file mode 100644 index 0000000..b8ef7b4 --- /dev/null +++ b/accounts/migrations/0002_address_accounts_address_all_key.py @@ -0,0 +1,17 @@ +# Generated by Django 4.1.5 on 2023-01-25 00:17 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('accounts', '0001_initial'), + ] + + operations = [ + migrations.AddConstraint( + model_name='address', + constraint=models.UniqueConstraint(fields=('first_name', 'last_name', 'street_address_1', 'street_address_2', 'city', 'state', 'postal_code'), name='accounts_address_all_key', violation_error_message='Duplicate: Address already exists.'), + ), + ] diff --git a/accounts/models.py b/accounts/models.py index f800495..63ef944 100644 --- a/accounts/models.py +++ b/accounts/models.py @@ -46,6 +46,23 @@ class Address(models.Model): yield ('postal_code', self.postal_code), yield ('country_code', 'US') + class Meta: + constraints = [ + models.UniqueConstraint( + name='accounts_address_all_key', + fields=[ + 'first_name', + 'last_name', + 'street_address_1', + 'street_address_2', + 'city', + 'state', + 'postal_code' + ], + violation_error_message='Duplicate: Address already exists.' + ) + ] + class User(AbstractUser): addresses = models.ManyToManyField(