From 3209b71b0a972d5bca6ca5d2a5b423753bddf6ed Mon Sep 17 00:00:00 2001 From: ErikKalkoken Date: Wed, 5 Jan 2022 19:28:44 +0100 Subject: [PATCH 1/2] Fix imports and flake8 issues --- allianceauth/eveonline/models.py | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/allianceauth/eveonline/models.py b/allianceauth/eveonline/models.py index 390c00b4..2b1d7884 100644 --- a/allianceauth/eveonline/models.py +++ b/allianceauth/eveonline/models.py @@ -68,8 +68,8 @@ class EveAllianceInfo(models.Model): for corp_id in alliance.corp_ids: if not EveCorporationInfo.objects.filter(corporation_id=corp_id).exists(): EveCorporationInfo.objects.create_corporation(corp_id) - EveCorporationInfo.objects.filter( - corporation_id__in=alliance.corp_ids).update(alliance=self + EveCorporationInfo.objects.filter(corporation_id__in=alliance.corp_ids).update( + alliance=self ) EveCorporationInfo.objects\ .filter(alliance=self)\ @@ -198,12 +198,12 @@ class EveCharacter(models.Model): class Meta: indexes = [ - models.Index(fields=['corporation_id',]), - models.Index(fields=['alliance_id',]), - models.Index(fields=['corporation_name',]), - models.Index(fields=['alliance_name',]), - models.Index(fields=['faction_id',]), - ] + models.Index(fields=['corporation_id',]), + models.Index(fields=['alliance_id',]), + models.Index(fields=['corporation_name',]), + models.Index(fields=['alliance_name',]), + models.Index(fields=['faction_id',]), + ] @property def alliance(self) -> Union[EveAllianceInfo, None]: @@ -336,7 +336,6 @@ class EveCharacter(models.Model): """image URL for alliance of this character or empty string""" return self.alliance_logo_url(256) - def faction_logo_url(self, size=_DEFAULT_IMAGE_SIZE) -> str: """image URL for alliance of this character or empty string""" if self.faction_id: From defcfa3316315a54380c2a47f5856e0c96b39cdf Mon Sep 17 00:00:00 2001 From: ErikKalkoken Date: Wed, 5 Jan 2022 19:47:15 +0100 Subject: [PATCH 2/2] Character names are not unique --- .../0016_character_names_are_not_unique.py | 18 ++++++++++++++ allianceauth/eveonline/models.py | 24 +++++++++++++++---- 2 files changed, 37 insertions(+), 5 deletions(-) create mode 100644 allianceauth/eveonline/migrations/0016_character_names_are_not_unique.py diff --git a/allianceauth/eveonline/migrations/0016_character_names_are_not_unique.py b/allianceauth/eveonline/migrations/0016_character_names_are_not_unique.py new file mode 100644 index 00000000..14067f94 --- /dev/null +++ b/allianceauth/eveonline/migrations/0016_character_names_are_not_unique.py @@ -0,0 +1,18 @@ +# Generated by Django 3.2.10 on 2022-01-05 18:44 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('eveonline', '0015_factions'), + ] + + operations = [ + migrations.AlterField( + model_name='evecharacter', + name='character_name', + field=models.CharField(db_index=True, max_length=254), + ), + ] diff --git a/allianceauth/eveonline/models.py b/allianceauth/eveonline/models.py index 2b1d7884..da85df84 100644 --- a/allianceauth/eveonline/models.py +++ b/allianceauth/eveonline/models.py @@ -1,16 +1,24 @@ -from django.db import models from typing import Union -from .managers import EveCharacterManager, EveCharacterProviderManager -from .managers import EveCorporationManager, EveCorporationProviderManager -from .managers import EveAllianceManager, EveAllianceProviderManager +from django.db import models + from . import providers from .evelinks import eveimageserver +from .managers import ( + EveAllianceManager, + EveAllianceProviderManager, + EveCharacterManager, + EveCharacterProviderManager, + EveCorporationManager, + EveCorporationProviderManager, +) _DEFAULT_IMAGE_SIZE = 32 class EveFactionInfo(models.Model): + """A faction in Eve Online.""" + faction_id = models.PositiveIntegerField(unique=True, db_index=True) faction_name = models.CharField(max_length=254, unique=True) @@ -52,6 +60,8 @@ class EveFactionInfo(models.Model): class EveAllianceInfo(models.Model): + """An alliance in Eve Online.""" + alliance_id = models.PositiveIntegerField(unique=True) alliance_name = models.CharField(max_length=254, unique=True) alliance_ticker = models.CharField(max_length=254) @@ -119,6 +129,8 @@ class EveAllianceInfo(models.Model): class EveCorporationInfo(models.Model): + """A corporation in Eve Online.""" + corporation_id = models.PositiveIntegerField(unique=True) corporation_name = models.CharField(max_length=254, unique=True) corporation_ticker = models.CharField(max_length=254) @@ -182,8 +194,10 @@ class EveCorporationInfo(models.Model): class EveCharacter(models.Model): + """A character in Eve Online.""" + character_id = models.PositiveIntegerField(unique=True) - character_name = models.CharField(max_length=254, unique=True) + character_name = models.CharField(max_length=254, db_index=True) corporation_id = models.PositiveIntegerField() corporation_name = models.CharField(max_length=254) corporation_ticker = models.CharField(max_length=5)