mirror of
https://github.com/peeringdb/peeringdb.git
synced 2024-05-11 05:55:09 +00:00
* fix next redirect when using U2F 2FA auth (#1191) * Added self identifier to API * fix migrations hierarchy after merging in previous support branch * campus object Co-authored-by: Stefan Pratter <stefan@20c.com> * fix out of bound error message add city / country to campus view * fix tests * relock poetry * linting * linting * fix docs regen * regen docs * linting * refactor self entity view to support carrier and campus object types and also make it easier to support additional object types in the future * remove debug message --------- Co-authored-by: Gajanan Patil <dipaksavaliya.python@gmail.com>
32 lines
1.1 KiB
Python
32 lines
1.1 KiB
Python
# Generated by Django 3.2.14 on 2022-08-18 11:33
|
|
|
|
from django.db import migrations, transaction
|
|
|
|
|
|
def forward(apps, schema_editor):
|
|
User = apps.get_model("peeringdb_server", "User")
|
|
EmailAddress = apps.get_model("account", "EmailAddress")
|
|
|
|
emails = {}
|
|
|
|
for email in EmailAddress.objects.all():
|
|
emails.setdefault(email.user_id, [])
|
|
emails[email.user_id].append(email.email.lower())
|
|
|
|
for user in User.objects.exclude(email__isnull=True).exclude(email=""):
|
|
if user.email.lower() not in emails.get(user.id, []):
|
|
if EmailAddress.objects.filter(email=user.email).exists():
|
|
print(
|
|
f"Could not create missing email address object for user {user.username} - will need to handle manually"
|
|
)
|
|
else:
|
|
EmailAddress.objects.create(email=user.email, user=user, primary=True)
|
|
|
|
|
|
class Migration(migrations.Migration):
|
|
dependencies = [
|
|
("peeringdb_server", "0091_alter_user_email"),
|
|
]
|
|
|
|
operations = [migrations.RunPython(forward, migrations.RunPython.noop)]
|