summaryrefslogtreecommitdiffstats
path: root/core/models/troggle.py
diff options
context:
space:
mode:
Diffstat (limited to 'core/models/troggle.py')
-rw-r--r--core/models/troggle.py7
1 files changed, 5 insertions, 2 deletions
diff --git a/core/models/troggle.py b/core/models/troggle.py
index 237247f..6155347 100644
--- a/core/models/troggle.py
+++ b/core/models/troggle.py
@@ -5,6 +5,7 @@ getcontext().prec = 2 # use 2 significant figures for decimal calculations
from django.db import models
from django.urls import reverse
+from django.contrib.auth.models import User
import settings
@@ -82,8 +83,10 @@ class Person(TroggleModel):
first_name = models.CharField(max_length=100)
last_name = models.CharField(max_length=100)
fullname = models.CharField(max_length=200) # display name, but should not be used for lookups
- nickname = models.CharField(max_length=200)
+ nickname = models.CharField(max_length=200, blank=True)
slug = models.SlugField(max_length=50, blank=True, null=True) # unique, enforced in code not in db
+ # no delete cascade. We have users without Persons, and Persons without users
+ user = models.OneToOneField(User, models.SET_NULL, blank=True, null=True)
is_vfho = models.BooleanField(
help_text="VFHO is the Vereines für Höhlenkunde in Obersteier, a nearby Austrian caving club.",
@@ -92,7 +95,7 @@ class Person(TroggleModel):
is_guest = models.BooleanField(default=False) # This is per-Person, not per-PersonExpedition
mug_shot = models.CharField(max_length=100, blank=True, null=True)
blurb = models.TextField(blank=True, null=True)
- orderref = models.CharField(max_length=200) # for alphabetic
+ orderref = models.CharField(max_length=200, blank=True) # for alphabetic
def get_absolute_url(self):
# we do not use URL_ROOT any more.