mirror of
https://github.com/peeringdb/peeringdb.git
synced 2024-05-11 05:55:09 +00:00
33 lines
957 B
Python
33 lines
957 B
Python
![]() |
from __future__ import unicode_literals
|
||
|
|
||
|
from django.db import migrations, models
|
||
|
|
||
|
|
||
|
def create_email_instances(apps, schema_editor):
|
||
|
|
||
|
users = apps.get_model("peeringdb_server", "User")
|
||
|
emailAddresses = apps.get_model('account', "EmailAddress")
|
||
|
all_emails = emailAddresses.objects.all()
|
||
|
emails = []
|
||
|
emails_dict = {}
|
||
|
for user in users.objects.all():
|
||
|
l_email = user.email.lower()
|
||
|
if not all_emails.filter(
|
||
|
email=l_email).exists() and l_email not in emails_dict:
|
||
|
emails_dict[l_email] = 1
|
||
|
emails.append(
|
||
|
emailAddresses(email=l_email, user=user, primary=True))
|
||
|
emailAddresses.objects.bulk_create(emails)
|
||
|
|
||
|
|
||
|
class Migration(migrations.Migration):
|
||
|
|
||
|
dependencies = [
|
||
|
('peeringdb_server', '0014_clt_description'),
|
||
|
]
|
||
|
|
||
|
operations = [
|
||
|
migrations.RunPython(create_email_instances,
|
||
|
migrations.RunPython.noop),
|
||
|
]
|