Better management of manually-set members.
[wolnelektury.git] / src / isbn / models.py
index a4fa28a..b5e5de3 100644 (file)
@@ -1,10 +1,8 @@
-# -*- coding: utf-8 -*-
 # This file is part of Wolnelektury, licensed under GNU Affero GPLv3 or later.
 # Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information.
 #
 from django.db import models
 from django.db.models import F
 # This file is part of Wolnelektury, licensed under GNU Affero GPLv3 or later.
 # Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information.
 #
 from django.db import models
 from django.db.models import F
-from jsonfield import JSONField
 
 
 class ISBNPool(models.Model):
 
 
 class ISBNPool(models.Model):
@@ -22,7 +20,7 @@ class ISBNPool(models.Model):
     next_suffix = models.IntegerField()
     purpose = models.CharField(max_length=4, choices=PURPOSE_CHOICES)
 
     next_suffix = models.IntegerField()
     purpose = models.CharField(max_length=4, choices=PURPOSE_CHOICES)
 
-    def __unicode__(self):
+    def __str__(self):
         return self.prefix
 
     @classmethod
         return self.prefix
 
     @classmethod
@@ -53,14 +51,14 @@ class ISBNPool(models.Model):
 
 
 class ONIXRecord(models.Model):
 
 
 class ONIXRecord(models.Model):
-    isbn_pool = models.ForeignKey(ISBNPool)
+    isbn_pool = models.ForeignKey(ISBNPool, models.PROTECT)
     datestamp = models.DateField(auto_now=True)
     suffix = models.IntegerField()
     product_form = models.CharField(max_length=4)
     product_form_detail = models.CharField(max_length=8, blank=True)
     title = models.CharField(max_length=256)
     part_number = models.CharField(max_length=64, blank=True)
     datestamp = models.DateField(auto_now=True)
     suffix = models.IntegerField()
     product_form = models.CharField(max_length=4)
     product_form_detail = models.CharField(max_length=8, blank=True)
     title = models.CharField(max_length=256)
     part_number = models.CharField(max_length=64, blank=True)
-    contributors = JSONField()  # roles, names, optional: ISNI, date of birth/death
+    contributors = models.TextField()  # roles, names, optional: ISNI, date of birth/death
     edition_type = models.CharField(max_length=4)
     edition_number = models.IntegerField(default=1)
     language = models.CharField(max_length=4)
     edition_type = models.CharField(max_length=4)
     edition_number = models.IntegerField(default=1)
     language = models.CharField(max_length=4)