1
0
mirror of https://github.com/peeringdb/peeringdb.git synced 2024-05-11 05:55:09 +00:00
Files
peeringdb-peeringdb/peeringdb_server/migrations/0001_initial.py

846 lines
40 KiB
Python
Raw Normal View History

2018-11-08 19:45:21 +00:00
# -*- coding: utf-8 -*-
# Generated by Django 1.11.4 on 2017-08-03 22:13
from __future__ import unicode_literals
from django.conf import settings
import django.contrib.auth.models
import django.core.validators
from django.db import migrations, models
import django.db.models.deletion
import django.db.models.manager
import django.utils.timezone
import django_countries.fields
import django_handleref.models
import django_inet.models
import django_peeringdb.models.abstract
import peeringdb_server.models
class Migration(migrations.Migration):
initial = True
dependencies = [
('contenttypes', '0002_remove_content_type_name'),
('auth', '0008_alter_user_username_max_length'),
]
operations = [
migrations.CreateModel(
name='User',
fields=[
('id',
models.AutoField(auto_created=True, primary_key=True,
serialize=False, verbose_name='ID')),
('password',
models.CharField(max_length=128, verbose_name='password')),
('last_login',
models.DateTimeField(blank=True, null=True,
verbose_name='last login')),
('is_superuser',
models.BooleanField(
default=False, help_text=
'Designates that this user has all permissions without explicitly assigning them.',
verbose_name='superuser status')),
('username',
models.CharField(
help_text='Required. Letters, digits and [@.+-/_=|] only.',
max_length=254, unique=True, validators=[
django.core.validators.RegexValidator(
b'^[\\w\\.@+-=|/]+$', 'Enter a valid username.',
b'invalid', flags=32)
], verbose_name='username')),
('email',
models.EmailField(max_length=254,
verbose_name='email address')),
('first_name',
models.CharField(blank=True, max_length=254,
verbose_name='first name')),
('last_name',
models.CharField(blank=True, max_length=254,
verbose_name='last name')),
('is_staff',
models.BooleanField(
default=False, help_text=
'Designates whether the user can log into admin site.',
verbose_name='staff status')),
('is_active',
models.BooleanField(
default=True, help_text=
'Designates whether this user should be treated as active. Unselect this instead of deleting accounts.',
verbose_name='active')),
('date_joined',
models.DateTimeField(default=django.utils.timezone.now,
verbose_name='date joined')),
('created',
django_handleref.models.CreatedDateTimeField(
auto_now_add=True, verbose_name='Created')),
('updated',
django_handleref.models.UpdatedDateTimeField(
auto_now=True, verbose_name='Updated')),
('status',
models.CharField(default=b'ok', max_length=254,
verbose_name='status')),
],
options={
'db_table': 'peeringdb_user',
'verbose_name': 'user',
'verbose_name_plural': 'users',
},
managers=[
('objects', django.contrib.auth.models.UserManager()),
],
),
migrations.CreateModel(
name='Facility',
fields=[
('id', models.AutoField(primary_key=True, serialize=False)),
('status',
models.CharField(blank=True, max_length=255,
verbose_name='Status')),
('created',
django_handleref.models.CreatedDateTimeField(
auto_now_add=True, verbose_name='Created')),
('updated',
django_handleref.models.UpdatedDateTimeField(
auto_now=True, verbose_name='Updated')),
('version', models.IntegerField(default=0)),
('address1', models.CharField(blank=True, max_length=255)),
('address2', models.CharField(blank=True, max_length=255)),
('city', models.CharField(blank=True, max_length=255)),
('state', models.CharField(blank=True, max_length=255)),
('zipcode', models.CharField(blank=True, max_length=48)),
('country',
django_countries.fields.CountryField(blank=True,
max_length=2)),
('name', models.CharField(max_length=255, unique=True)),
('website',
django_peeringdb.models.abstract.URLField(
blank=True, max_length=255)),
('clli', models.CharField(blank=True, max_length=18)),
('rencode', models.CharField(blank=True, max_length=18)),
('npanxx', models.CharField(blank=True, max_length=21)),
('notes', models.TextField(blank=True)),
],
options={
'abstract': False,
'db_table': 'peeringdb_facility',
'verbose_name_plural': 'Facilities',
},
managers=[
('handleref', django.db.models.manager.Manager()),
],
),
migrations.CreateModel(
name='InternetExchange',
fields=[
('id', models.AutoField(primary_key=True, serialize=False)),
('status',
models.CharField(blank=True, max_length=255,
verbose_name='Status')),
('created',
django_handleref.models.CreatedDateTimeField(
auto_now_add=True, verbose_name='Created')),
('updated',
django_handleref.models.UpdatedDateTimeField(
auto_now=True, verbose_name='Updated')),
('version', models.IntegerField(default=0)),
('name', models.CharField(max_length=64, unique=True)),
('name_long', models.CharField(blank=True, max_length=254)),
('city', models.CharField(max_length=192)),
('country',
django_countries.fields.CountryField(max_length=2)),
('notes', models.TextField(blank=True)),
('region_continent',
models.CharField(
choices=[(b'North America', b'North America'),
(b'Asia Pacific', b'Asia Pacific'), (b'Europe',
b'Europe'),
(b'South America',
b'South America'), (b'Africa', b'Africa'),
(b'Australia', b'Australia'), (b'Middle East',
b'Middle East')],
max_length=255)),
('media',
models.CharField(
choices=[(b'Ethernet', b'Ethernet'), (b'ATM', b'ATM'),
(b'Multiple', b'Multiple')], max_length=128)),
('proto_unicast', models.BooleanField(default=False)),
('proto_multicast', models.BooleanField(default=False)),
('proto_ipv6', models.BooleanField(default=False)),
('website',
django_peeringdb.models.abstract.URLField(
blank=True, max_length=255)),
('url_stats',
django_peeringdb.models.abstract.URLField(
blank=True, max_length=255)),
('tech_email', models.EmailField(blank=True, max_length=254)),
('tech_phone', models.CharField(blank=True, max_length=192)),
('policy_email', models.EmailField(blank=True,
max_length=254)),
('policy_phone', models.CharField(blank=True, max_length=192)),
],
options={
'abstract': False,
'db_table': 'peeringdb_ix',
},
managers=[
('handleref', django.db.models.manager.Manager()),
],
),
migrations.CreateModel(
name='InternetExchangeFacility',
fields=[
('id', models.AutoField(primary_key=True, serialize=False)),
('status',
models.CharField(blank=True, max_length=255,
verbose_name='Status')),
('created',
django_handleref.models.CreatedDateTimeField(
auto_now_add=True, verbose_name='Created')),
('updated',
django_handleref.models.UpdatedDateTimeField(
auto_now=True, verbose_name='Updated')),
('version', models.IntegerField(default=0)),
('facility',
models.ForeignKey(default=0,
on_delete=django.db.models.deletion.CASCADE,
related_name='ixfac_set',
to='peeringdb_server.Facility')),
('ix',
models.ForeignKey(on_delete=django.db.models.deletion.CASCADE,
related_name='ixfac_set',
to='peeringdb_server.InternetExchange')),
],
options={
'db_table': 'peeringdb_ix_facility',
},
managers=[
('handleref', django.db.models.manager.Manager()),
],
),
migrations.CreateModel(
name='IXLan',
fields=[
('id', models.AutoField(primary_key=True, serialize=False)),
('status',
models.CharField(blank=True, max_length=255,
verbose_name='Status')),
('created',
django_handleref.models.CreatedDateTimeField(
auto_now_add=True, verbose_name='Created')),
('updated',
django_handleref.models.UpdatedDateTimeField(
auto_now=True, verbose_name='Updated')),
('version', models.IntegerField(default=0)),
('name', models.CharField(blank=True, max_length=255)),
('descr', models.TextField(blank=True)),
('mtu', models.PositiveIntegerField(blank=True, null=True)),
('vlan', models.PositiveIntegerField(blank=True, null=True)),
('dot1q_support', models.BooleanField(default=False)),
('rs_asn',
django_inet.models.ASNField(blank=True, default=0,
null=True)),
('arp_sponge',
django_inet.models.MacAddressField(blank=True, max_length=17,
null=True, unique=True)),
('ix',
models.ForeignKey(default=0,
on_delete=django.db.models.deletion.CASCADE,
related_name='ixlan_set',
to='peeringdb_server.InternetExchange')),
],
options={
'db_table': 'peeringdb_ixlan',
},
managers=[
('handleref', django.db.models.manager.Manager()),
],
),
migrations.CreateModel(
name='IXLanPrefix',
fields=[
('id', models.AutoField(primary_key=True, serialize=False)),
('status',
models.CharField(blank=True, max_length=255,
verbose_name='Status')),
('created',
django_handleref.models.CreatedDateTimeField(
auto_now_add=True, verbose_name='Created')),
('updated',
django_handleref.models.UpdatedDateTimeField(
auto_now=True, verbose_name='Updated')),
('version', models.IntegerField(default=0)),
('notes', models.CharField(blank=True, max_length=255)),
('protocol',
models.CharField(choices=[(b'IPv4', b'IPv4'), (b'IPv6',
b'IPv6')],
max_length=64)),
('prefix',
django_inet.models.IPPrefixField(max_length=43, unique=True)),
('ixlan',
models.ForeignKey(
default=0, on_delete=django.db.models.deletion.CASCADE,
related_name='ixpfx_set', to='peeringdb_server.IXLan')),
],
options={
'abstract': False,
'db_table': 'peeringdb_ixlan_prefix',
},
managers=[
('handleref', django.db.models.manager.Manager()),
],
),
migrations.CreateModel(
name='Network',
fields=[
('id', models.AutoField(primary_key=True, serialize=False)),
('status',
models.CharField(blank=True, max_length=255,
verbose_name='Status')),
('created',
django_handleref.models.CreatedDateTimeField(
auto_now_add=True, verbose_name='Created')),
('updated',
django_handleref.models.UpdatedDateTimeField(
auto_now=True, verbose_name='Updated')),
('version', models.IntegerField(default=0)),
('asn', django_inet.models.ASNField(unique=True)),
('name', models.CharField(max_length=255, unique=True)),
('aka', models.CharField(blank=True, max_length=255)),
('irr_as_set', models.CharField(blank=True, max_length=255)),
('website',
django_peeringdb.models.abstract.URLField(
blank=True, max_length=255)),
('looking_glass',
django_peeringdb.models.abstract.URLField(
blank=True, max_length=255)),
('route_server',
django_peeringdb.models.abstract.URLField(
blank=True, max_length=255)),
('notes', models.TextField(blank=True)),
('notes_private', models.TextField(blank=True)),
('info_traffic',
models.CharField(blank=True, choices=[
(b'', b'Not Disclosed'), (b'0-20 Mbps', b'0-20 Mbps'),
(b'20-100Mbps', b'20-100Mbps'), (b'100-1000Mbps',
b'100-1000Mbps'),
(b'1-5Gbps', b'1-5Gbps'), (b'5-10Gbps',
b'5-10Gbps'), (b'10-20Gbps',
b'10-20Gbps'),
(b'20-50 Gbps',
b'20-50 Gbps'), (b'50-100 Gbps',
b'50-100 Gbps'), (b'100+ Gbps',
b'100+ Gbps'),
(b'100-200 Gbps',
b'100-200 Gbps'), (b'200-300 Gbps',
b'200-300 Gbps'), (b'300-500 Gbps',
b'300-500 Gbps'),
(b'500-1000 Gbps',
b'500-1000 Gbps'), (b'1 Tbps+',
b'1 Tbps+'), (b'10 Tbps+',
b'10 Tbps+')
], max_length=39)),
('info_ratio',
models.CharField(blank=True, choices=[
(b'', b'Not Disclosed'), (b'Not Disclosed',
b'Not Disclosed'),
(b'Heavy Outbound',
b'Heavy Outbound'), (b'Mostly Outbound',
b'Mostly Outbound'), (b'Balanced',
b'Balanced'),
(b'Mostly Inbound', b'Mostly Inbound'), (b'Heavy Inbound',
b'Heavy Inbound')
], default=b'Not Disclosed', max_length=45)),
('info_scope',
models.CharField(blank=True, choices=[
(b'', b'Not Disclosed'), (b'Not Disclosed',
b'Not Disclosed'),
(b'Regional',
b'Regional'), (b'North America',
b'North America'), (b'Asia Pacific',
b'Asia Pacific'),
(b'Europe', b'Europe'), (b'South America',
b'South America'), (b'Africa',
b'Africa'),
(b'Australia',
b'Australia'), (b'Middle East',
b'Middle East'), (b'Global', b'Global')
], default=b'Not Disclosed', max_length=39)),
('info_type',
models.CharField(blank=True, choices=[
(b'', b'Not Disclosed'), (b'Not Disclosed',
b'Not Disclosed'),
(b'NSP', b'NSP'), (b'Content',
b'Content'), (b'Cable/DSL/ISP',
b'Cable/DSL/ISP'),
(b'Enterprise', b'Enterprise'), (b'Educational/Research',
b'Educational/Research'),
(b'Non-Profit', b'Non-Profit'), (b'Route Server',
b'Route Server')
], default=b'Not Disclosed', max_length=60)),
('info_prefixes4',
models.PositiveIntegerField(blank=True, null=True)),
('info_prefixes6',
models.PositiveIntegerField(blank=True, null=True)),
('info_unicast', models.BooleanField(default=False)),
('info_multicast', models.BooleanField(default=False)),
('info_ipv6', models.BooleanField(default=False)),
('policy_url',
django_peeringdb.models.abstract.URLField(
blank=True, max_length=255)),
('policy_general',
models.CharField(blank=True,
choices=[(b'Open', b'Open'), (b'Selective',
b'Selective'),
(b'Restrictive', b'Restrictive'),
(b'No', b'No')], max_length=72)),
('policy_locations',
models.CharField(
blank=True,
choices=[(b'Not Required',
b'Not Required'), (b'Preferred', b'Preferred'),
(b'Required - US',
b'Required - US'), (b'Required - EU',
b'Required - EU'),
(b'Required - International',
b'Required - International')], max_length=72)),
('policy_ratio', models.BooleanField(default=False)),
('policy_contracts',
models.CharField(blank=True,
choices=[(b'Not Required', b'Not Required'),
(b'Private Only', b'Private Only'),
(b'Required',
b'Required')], max_length=36)),
],
options={
'abstract': False,
'db_table': 'peeringdb_network',
'verbose_name_plural': 'Networks',
},
managers=[
('handleref', django.db.models.manager.Manager()),
],
),
migrations.CreateModel(
name='NetworkContact',
fields=[
('id', models.AutoField(primary_key=True, serialize=False)),
('status',
models.CharField(blank=True, max_length=255,
verbose_name='Status')),
('created',
django_handleref.models.CreatedDateTimeField(
auto_now_add=True, verbose_name='Created')),
('updated',
django_handleref.models.UpdatedDateTimeField(
auto_now=True, verbose_name='Updated')),
('version', models.IntegerField(default=0)),
('role',
models.CharField(
choices=[(b'Abuse', b'Abuse'), (b'Maintenance',
b'Maintenance'),
(b'Policy', b'Policy'), (b'Technical',
b'Technical'),
(b'NOC', b'NOC'), (b'Public Relations',
b'Public Relations'),
(b'Sales', b'Sales')], max_length=27)),
('visible',
models.CharField(choices=[(b'Private', b'Private'),
(b'Users', b'Users'), (b'Public',
b'Public')],
default=b'Public', max_length=64)),
('name', models.CharField(blank=True, max_length=254)),
('phone', models.CharField(blank=True, max_length=100)),
('email', models.EmailField(blank=True, max_length=254)),
('url',
django_peeringdb.models.abstract.URLField(
blank=True, max_length=255)),
('network',
models.ForeignKey(
default=0, on_delete=django.db.models.deletion.CASCADE,
related_name='poc_set', to='peeringdb_server.Network')),
],
options={
'db_table': 'peeringdb_network_contact',
},
managers=[
('handleref', django.db.models.manager.Manager()),
],
),
migrations.CreateModel(
name='NetworkFacility',
fields=[
('id', models.AutoField(primary_key=True, serialize=False)),
('status',
models.CharField(blank=True, max_length=255,
verbose_name='Status')),
('created',
django_handleref.models.CreatedDateTimeField(
auto_now_add=True, verbose_name='Created')),
('updated',
django_handleref.models.UpdatedDateTimeField(
auto_now=True, verbose_name='Updated')),
('version', models.IntegerField(default=0)),
('local_asn', django_inet.models.ASNField(
blank=True, null=True)),
('avail_sonet', models.BooleanField(default=False)),
('avail_ethernet', models.BooleanField(default=False)),
('avail_atm', models.BooleanField(default=False)),
('facility',
models.ForeignKey(default=0,
on_delete=django.db.models.deletion.CASCADE,
related_name='netfac_set',
to='peeringdb_server.Facility')),
('network',
models.ForeignKey(default=0,
on_delete=django.db.models.deletion.CASCADE,
related_name='netfac_set',
to='peeringdb_server.Network')),
],
options={
'db_table': 'peeringdb_network_facility',
},
managers=[
('handleref', django.db.models.manager.Manager()),
],
),
migrations.CreateModel(
name='NetworkIXLan',
fields=[
('id', models.AutoField(primary_key=True, serialize=False)),
('status',
models.CharField(blank=True, max_length=255,
verbose_name='Status')),
('created',
django_handleref.models.CreatedDateTimeField(
auto_now_add=True, verbose_name='Created')),
('updated',
django_handleref.models.UpdatedDateTimeField(
auto_now=True, verbose_name='Updated')),
('version', models.IntegerField(default=0)),
('asn', django_inet.models.ASNField()),
('ipaddr4',
django_inet.models.IPAddressField(blank=True, max_length=39,
null=True)),
('ipaddr6',
django_inet.models.IPAddressField(blank=True, max_length=39,
null=True)),
('is_rs_peer', models.BooleanField(default=False)),
('notes', models.CharField(blank=True, max_length=255)),
('speed', models.PositiveIntegerField()),
('ixlan',
models.ForeignKey(default=0,
on_delete=django.db.models.deletion.CASCADE,
related_name='netixlan_set',
to='peeringdb_server.IXLan')),
('network',
models.ForeignKey(default=0,
on_delete=django.db.models.deletion.CASCADE,
related_name='netixlan_set',
to='peeringdb_server.Network')),
],
options={
'db_table': 'peeringdb_network_ixlan',
},
managers=[
('handleref', django.db.models.manager.Manager()),
],
),
migrations.CreateModel(
name='Organization',
fields=[
('id', models.AutoField(primary_key=True, serialize=False)),
('status',
models.CharField(blank=True, max_length=255,
verbose_name='Status')),
('created',
django_handleref.models.CreatedDateTimeField(
auto_now_add=True, verbose_name='Created')),
('updated',
django_handleref.models.UpdatedDateTimeField(
auto_now=True, verbose_name='Updated')),
('version', models.IntegerField(default=0)),
('address1', models.CharField(blank=True, max_length=255)),
('address2', models.CharField(blank=True, max_length=255)),
('city', models.CharField(blank=True, max_length=255)),
('state', models.CharField(blank=True, max_length=255)),
('zipcode', models.CharField(blank=True, max_length=48)),
('country',
django_countries.fields.CountryField(blank=True,
max_length=2)),
('name', models.CharField(max_length=255, unique=True)),
('website',
django_peeringdb.models.abstract.URLField(
blank=True, max_length=255)),
('notes', models.TextField(blank=True)),
('logo',
models.FileField(
blank=True, help_text=
b'Allows you to upload and set a logo image file for this organization',
null=True, upload_to=b'logos/')),
],
options={
'abstract': False,
'db_table': 'peeringdb_organization',
'verbose_name_plural': 'Organizations',
},
managers=[
('handleref', django.db.models.manager.Manager()),
],
),
migrations.CreateModel(
name='OrganizationMerge',
fields=[
('id',
models.AutoField(auto_created=True, primary_key=True,
serialize=False, verbose_name='ID')),
('created',
models.DateTimeField(auto_now_add=True,
verbose_name='Merged on')),
('from_org',
models.ForeignKey(on_delete=django.db.models.deletion.CASCADE,
related_name='merged_to',
to='peeringdb_server.Organization')),
('to_org',
models.ForeignKey(on_delete=django.db.models.deletion.CASCADE,
related_name='merged_from',
to='peeringdb_server.Organization')),
],
options={
'db_table': 'peeringdb_organization_merge',
'verbose_name': 'Organization Merge',
'verbose_name_plural': 'Organization Merges',
},
),
migrations.CreateModel(
name='OrganizationMergeEntity',
fields=[
('id',
models.AutoField(auto_created=True, primary_key=True,
serialize=False, verbose_name='ID')),
('object_id', models.PositiveIntegerField()),
('note', models.CharField(blank=True, max_length=32,
null=True)),
('content_type',
models.ForeignKey(on_delete=django.db.models.deletion.CASCADE,
to='contenttypes.ContentType')),
('merge',
models.ForeignKey(on_delete=django.db.models.deletion.CASCADE,
related_name='entities',
to='peeringdb_server.OrganizationMerge')),
],
options={
'db_table': 'peeringdb_organization_merge_entity',
'verbose_name': 'Organization Merge: Entity',
'verbose_name_plural': 'Organization Merge: Entities',
},
),
migrations.CreateModel(
name='Sponsorship',
fields=[
('id',
models.AutoField(auto_created=True, primary_key=True,
serialize=False, verbose_name='ID')),
('start_date',
models.DateTimeField(
default=peeringdb_server.models.default_time_s,
verbose_name='Sponsorship starts on')),
('end_date',
models.DateTimeField(
default=peeringdb_server.models.default_time_e,
verbose_name='Sponsorship ends on')),
('notify_date',
models.DateTimeField(
blank=True, null=True,
verbose_name='Expiration notification sent on')),
('level',
models.PositiveIntegerField(
choices=[(1, 'Silver'), (2, 'Gold'), (3, 'Platinum'),
(4, 'Diamond')], default=1)),
('url',
models.URLField(
blank=True,
help_text=
'If specified clicking the sponsorship will take the user to this location',
null=True, verbose_name='URL')),
('logo',
models.FileField(
blank=True, help_text=
b'Allows you to upload and set a logo image file for this sponsorship',
null=True, upload_to=b'logos/')),
('org',
models.ForeignKey(on_delete=django.db.models.deletion.CASCADE,
related_name='sponsorships',
to='peeringdb_server.Organization')),
],
options={
'db_table': 'peeringdb_sponsorship',
'verbose_name': 'Sponsorship',
'verbose_name_plural': 'Sponsorships',
},
),
migrations.CreateModel(
name='UserOrgAffiliationRequest',
fields=[
('id',
models.AutoField(auto_created=True, primary_key=True,
serialize=False, verbose_name='ID')),
('org_name',
models.CharField(
blank=True,
help_text=b'The organization name entered by the user',
max_length=255, null=True)),
('asn',
django_inet.models.ASNField(
blank=True, help_text=b'The ASN entered by the user',
null=True)),
('created',
django_handleref.models.CreatedDateTimeField(
auto_now_add=True, verbose_name='Created')),
('status',
models.CharField(
choices=[(b'pending', b'Pending'), (b'approved',
b'Approved'),
(b'denied', b'Denied')],
help_text=b'Status of this request', max_length=254)),
('org',
models.ForeignKey(
blank=True, help_text=
b'This organization in our database that was derived from the provided ASN or organization name. If this is empty it means no matching organization was found.',
null=True, on_delete=django.db.models.deletion.CASCADE,
related_name='affiliation_requests',
to='peeringdb_server.Organization')),
],
options={
'db_table': 'peeringdb_user_org_affil_request',
},
),
migrations.CreateModel(
name='VerificationQueueItem',
fields=[
('id',
models.AutoField(auto_created=True, primary_key=True,
serialize=False, verbose_name='ID')),
('object_id', models.PositiveIntegerField()),
('created',
django_handleref.models.CreatedDateTimeField(
auto_now_add=True, verbose_name='Created')),
('notified', models.BooleanField(default=False)),
('content_type',
models.ForeignKey(on_delete=django.db.models.deletion.CASCADE,
to='contenttypes.ContentType')),
],
options={
'db_table': 'peeringdb_verification_queue',
},
),
migrations.CreateModel(
name='UserPasswordReset',
fields=[
('user',
models.OneToOneField(
on_delete=django.db.models.deletion.CASCADE,
primary_key=True, related_name='password_reset',
serialize=False, to=settings.AUTH_USER_MODEL)),
('token', models.CharField(max_length=255)),
('created', models.DateTimeField(auto_now_add=True)),
],
options={
'db_table': 'peeringdb_user_password_reset',
},
),
migrations.AddField(
model_name='verificationqueueitem',
name='user',
field=models.ForeignKey(
blank=True, help_text=
b'The item that this queue is attached to was created by this user',
null=True, on_delete=django.db.models.deletion.CASCADE,
related_name='vqitems', to=settings.AUTH_USER_MODEL),
),
migrations.AddField(
model_name='userorgaffiliationrequest',
name='user',
field=models.ForeignKey(
help_text=b'The user that made the request',
on_delete=django.db.models.deletion.CASCADE,
related_name='affiliation_requests',
to=settings.AUTH_USER_MODEL),
),
migrations.AddField(
model_name='network',
name='org',
field=models.ForeignKey(
on_delete=django.db.models.deletion.CASCADE,
related_name='net_set', to='peeringdb_server.Organization'),
),
migrations.AddField(
model_name='internetexchange',
name='org',
field=models.ForeignKey(
on_delete=django.db.models.deletion.CASCADE,
related_name='ix_set', to='peeringdb_server.Organization'),
),
migrations.AddField(
model_name='facility',
name='org',
field=models.ForeignKey(
on_delete=django.db.models.deletion.CASCADE,
related_name='fac_set', to='peeringdb_server.Organization'),
),
migrations.AddField(
model_name='user',
name='groups',
field=models.ManyToManyField(
blank=True, help_text=
'The groups this user belongs to. A user will get all permissions granted to each of their groups.',
related_name='user_set', related_query_name='user',
to='auth.Group', verbose_name='groups'),
),
migrations.AddField(
model_name='user',
name='user_permissions',
field=models.ManyToManyField(
blank=True, help_text='Specific permissions for this user.',
related_name='user_set', related_query_name='user',
to='auth.Permission', verbose_name='user permissions'),
),
migrations.CreateModel(
name='DuplicateIPNetworkIXLan',
fields=[],
options={
'verbose_name': 'Duplicate IP',
'proxy': True,
'verbose_name_plural': 'Duplicate IPs',
'indexes': [],
},
bases=('peeringdb_server.networkixlan', ),
managers=[
('handleref', django.db.models.manager.Manager()),
],
),
migrations.CreateModel(
name='UserPermission',
fields=[],
options={
'verbose_name': 'User Permission',
'proxy': True,
'verbose_name_plural': 'User Permissions',
'indexes': [],
},
bases=('peeringdb_server.user', ),
managers=[
('objects', django.contrib.auth.models.UserManager()),
],
),
migrations.AlterUniqueTogether(
name='networkfacility',
unique_together=set([('network', 'facility', 'local_asn')]),
),
migrations.AlterUniqueTogether(
name='internetexchangefacility',
unique_together=set([('ix', 'facility')]),
),
]