Create Lab Model
authorSawyer Bergeron <sbergeron@iol.unh.edu>
Tue, 9 Jan 2018 15:38:23 +0000 (10:38 -0500)
committerSawyer Bergeron <sbergeron@iol.unh.edu>
Tue, 9 Jan 2018 18:15:30 +0000 (18:15 +0000)
Jira: PHAROS-346

Allows admin to instantiate lab instances

Change-Id: I67f8ceb3bc76d4cdd09fb6f3a0b715af312f6f83
Signed-off-by: Sawyer Bergeron <sbergeron@iol.unh.edu>
src/account/admin.py
src/account/migrations/0003_lab.py [new file with mode: 0644]
src/account/models.py

index 18b2e1a..6f77122 100644 (file)
@@ -10,6 +10,7 @@
 
 from django.contrib import admin
 
-from account.models import UserProfile
+from account.models import UserProfile, Lab
 
-admin.site.register(UserProfile)
\ No newline at end of file
+admin.site.register(UserProfile)
+admin.site.register(Lab)
diff --git a/src/account/migrations/0003_lab.py b/src/account/migrations/0003_lab.py
new file mode 100644 (file)
index 0000000..c4643c5
--- /dev/null
@@ -0,0 +1,37 @@
+##############################################################################
+# Copyright (c) 2016 Sawyer Bergeron and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+# -*- coding: utf-8 -*-
+# Generated by Django 1.10 on 2018-01-09 15:34
+from __future__ import unicode_literals
+
+from django.conf import settings
+from django.db import migrations, models
+import django.db.models.deletion
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        migrations.swappable_dependency(settings.AUTH_USER_MODEL),
+        ('account', '0002_userprofile_email_addr'),
+    ]
+
+    operations = [
+        migrations.CreateModel(
+            name='Lab',
+            fields=[
+                ('id', models.AutoField(primary_key=True, serialize=False)),
+                ('name', models.CharField(max_length=200, unique=True)),
+                ('contact_email', models.EmailField(blank=True, max_length=200, null=True)),
+                ('contact_phone', models.CharField(blank=True, max_length=20, null=True)),
+                ('lab_user', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
+            ],
+        ),
+    ]
index 47b012b..1e493b9 100644 (file)
@@ -34,3 +34,13 @@ class UserProfile(models.Model):
 
     def __str__(self):
         return self.user.username
+
+class Lab(models.Model):
+    id = models.AutoField(primary_key=True)
+    lab_user = models.OneToOneField(User, on_delete=models.CASCADE)
+    name = models.CharField(max_length=200, unique=True, null=False, blank=False)
+    contact_email = models.EmailField(max_length=200, null=True, blank=True)
+    contact_phone = models.CharField(max_length=20, null=True, blank=True)
+
+    def __str__(self):
+        return self.name