perf: 修改合并引起的 migrations 依赖问题

This commit is contained in:
ibuler
2022-12-05 16:07:14 +08:00
parent e91cbb9c97
commit 2168610ffe
24 changed files with 347 additions and 461 deletions

View File

@@ -1,13 +1,11 @@
from django.core.validators import MinValueValidator, MaxValueValidator
from django.db import models
from django.utils.translation import ugettext_lazy as _
from django.core.validators import MinValueValidator, MaxValueValidator
from common.db.models import JMSBaseModel
from assets.models import Asset
from common.db.fields import PortField
from common.db.models import JMSBaseModel
from common.utils.ip import contains_ip
from ..utils import db_port_manager, DBPortManager
db_port_manager: DBPortManager
class Endpoint(JMSBaseModel):
@@ -31,9 +29,10 @@ class Endpoint(JMSBaseModel):
return self.name
def get_port(self, target_instance, protocol):
from terminal.utils import db_port_manager
if protocol in ['https', 'http', 'ssh', 'rdp']:
port = getattr(self, f'{protocol}_port', 0)
elif isinstance(target_instance, Application) and target_instance.category_db:
elif isinstance(target_instance, Asset) and target_instance.category == 'dabase':
port = db_port_manager.get_port_by_db(target_instance)
else:
port = 0

View File

@@ -5,8 +5,8 @@ from django.conf import settings
from django.db import models
from django.utils.translation import ugettext_lazy as _
from common.utils import get_logger, lazyproperty
from common.const.signals import SKIP_SIGNAL
from common.utils import get_logger, lazyproperty
from orgs.utils import tmp_to_root_org
from terminal.const import TerminalType as TypeChoices
from users.models import User
@@ -85,8 +85,9 @@ class Terminal(StorageMixin, TerminalStatusMixin, models.Model):
remote_addr = models.CharField(max_length=128, blank=True, verbose_name=_('Remote Address'))
command_storage = models.CharField(max_length=128, verbose_name=_("Command storage"), default='default')
replay_storage = models.CharField(max_length=128, verbose_name=_("Replay storage"), default='default')
user = models.OneToOneField(User, related_name='terminal', verbose_name=_('Application User'), null=True, on_delete=models.CASCADE)
is_accepted = models.BooleanField(default=False, verbose_name=_('Is Accepted'))
user = models.OneToOneField(User, related_name='terminal', verbose_name=_('Application User'), null=True,
on_delete=models.CASCADE)
is_deleted = models.BooleanField(default=False, verbose_name=_('Is deleted'))
date_created = models.DateTimeField(auto_now_add=True)
comment = models.TextField(blank=True, verbose_name=_('Comment'))