feat: Use choices and fix bug where default was not honored
This commit is contained in:
		@@ -0,0 +1,18 @@
 | 
			
		||||
# Generated by Django 5.1.4 on 2025-03-20 23:27
 | 
			
		||||
 | 
			
		||||
from django.db import migrations, models
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
class Migration(migrations.Migration):
 | 
			
		||||
 | 
			
		||||
    dependencies = [
 | 
			
		||||
        ('fellchensammlung', '0039_alter_rescueorganization_last_checked'),
 | 
			
		||||
    ]
 | 
			
		||||
 | 
			
		||||
    operations = [
 | 
			
		||||
        migrations.AlterField(
 | 
			
		||||
            model_name='rescueorganization',
 | 
			
		||||
            name='allows_using_materials',
 | 
			
		||||
            field=models.CharField(choices=[('allowed', 'Usage allowed'), ('requested', 'Usage requested'), ('denied', 'Usage denied'), ('other', "It's complicated"), ('not_asked', 'Not asked')], default='not_asked', max_length=200, verbose_name='Erlaubt Nutzung von Inhalten'),
 | 
			
		||||
        ),
 | 
			
		||||
    ]
 | 
			
		||||
@@ -88,29 +88,24 @@ class ExternalSourceChoices(models.TextChoices):
 | 
			
		||||
    OSM = "OSM", _("Open Street Map")
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
class ALLOW_USE_MATERIALS_CHOICE(models.TextChoices):
 | 
			
		||||
    USE_MATERIALS_ALLOWED = "allowed", _("Usage allowed")
 | 
			
		||||
    USE_MATERIALS_REQUESTED = "requested", _("Usage requested")
 | 
			
		||||
    USE_MATERIALS_DENIED = "denied", _("Usage denied")
 | 
			
		||||
    USE_MATERIALS_OTHER = "other", _("It's complicated")
 | 
			
		||||
    USE_MATERIALS_NOT_ASKED = "not_asked", _("Not asked")
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
class RescueOrganization(models.Model):
 | 
			
		||||
    def __str__(self):
 | 
			
		||||
        return f"{self.name}"
 | 
			
		||||
 | 
			
		||||
    USE_MATERIALS_ALLOWED = "allowed"
 | 
			
		||||
    USE_MATERIALS_REQUESTED = "requested"
 | 
			
		||||
    USE_MATERIALS_DENIED = "denied"
 | 
			
		||||
    USE_MATERIALS_OTHER = "other"
 | 
			
		||||
    USE_MATERIALS_NOT_ASKED = "not_asked"
 | 
			
		||||
 | 
			
		||||
    ALLOW_USE_MATERIALS_CHOICE = {
 | 
			
		||||
        USE_MATERIALS_ALLOWED: "Usage allowed",
 | 
			
		||||
        USE_MATERIALS_REQUESTED: "Usage requested",
 | 
			
		||||
        USE_MATERIALS_DENIED: "Usage denied",
 | 
			
		||||
        USE_MATERIALS_OTHER: "It's complicated",
 | 
			
		||||
        USE_MATERIALS_NOT_ASKED: "Not asked"
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    name = models.CharField(max_length=200)
 | 
			
		||||
    trusted = models.BooleanField(default=False, verbose_name=_('Vertrauenswürdig'))
 | 
			
		||||
    allows_using_materials = models.CharField(max_length=200,
 | 
			
		||||
                                              default=ALLOW_USE_MATERIALS_CHOICE[USE_MATERIALS_NOT_ASKED],
 | 
			
		||||
                                              choices=ALLOW_USE_MATERIALS_CHOICE,
 | 
			
		||||
                                              default=ALLOW_USE_MATERIALS_CHOICE.USE_MATERIALS_NOT_ASKED,
 | 
			
		||||
                                              choices=ALLOW_USE_MATERIALS_CHOICE.choices,
 | 
			
		||||
                                              verbose_name=_('Erlaubt Nutzung von Inhalten'))
 | 
			
		||||
    location_string = models.CharField(max_length=200, verbose_name=_("Ort der Organisation"))
 | 
			
		||||
    location = models.ForeignKey(Location, on_delete=models.PROTECT, blank=True, null=True)
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user