Commit 790652ff authored by ibuler's avatar ibuler

[Update] 修改协议小问题

parent 4d1da568
...@@ -3,6 +3,7 @@ ...@@ -3,6 +3,7 @@
from django import forms from django import forms
from django.utils.translation import gettext_lazy as _ from django.utils.translation import gettext_lazy as _
from orgs.mixins import OrgModelForm
from ..models import Domain, Asset, Gateway from ..models import Domain, Asset, Gateway
from .user import PasswordAndKeyAuthForm from .user import PasswordAndKeyAuthForm
...@@ -34,7 +35,7 @@ class DomainForm(forms.ModelForm): ...@@ -34,7 +35,7 @@ class DomainForm(forms.ModelForm):
return instance return instance
class GatewayForm(PasswordAndKeyAuthForm): class GatewayForm(PasswordAndKeyAuthForm, OrgModelForm):
def save(self, commit=True): def save(self, commit=True):
# Because we define custom field, so we need rewrite :method: `save` # Because we define custom field, so we need rewrite :method: `save`
......
...@@ -19,7 +19,7 @@ signer = get_signer() ...@@ -19,7 +19,7 @@ signer = get_signer()
class AssetUser(OrgModelMixin): class AssetUser(OrgModelMixin):
id = models.UUIDField(default=uuid.uuid4, primary_key=True) id = models.UUIDField(default=uuid.uuid4, primary_key=True)
name = models.CharField(max_length=128, unique=True, verbose_name=_('Name')) name = models.CharField(max_length=128, verbose_name=_('Name'))
username = models.CharField(max_length=32, blank=True, verbose_name=_('Username'), validators=[alphanumeric]) username = models.CharField(max_length=32, blank=True, verbose_name=_('Username'), validators=[alphanumeric])
_password = models.CharField(max_length=256, blank=True, null=True, verbose_name=_('Password')) _password = models.CharField(max_length=256, blank=True, null=True, verbose_name=_('Password'))
_private_key = models.TextField(max_length=4096, blank=True, null=True, verbose_name=_('SSH private key'), validators=[private_key_validator, ]) _private_key = models.TextField(max_length=4096, blank=True, null=True, verbose_name=_('SSH private key'), validators=[private_key_validator, ])
......
...@@ -34,7 +34,7 @@ class Domain(OrgModelMixin): ...@@ -34,7 +34,7 @@ class Domain(OrgModelMixin):
return random.choice(self.gateways) return random.choice(self.gateways)
class Gateway(AssetUser): class Gateway(AssetUser, OrgModelMixin):
SSH_PROTOCOL = 'ssh' SSH_PROTOCOL = 'ssh'
RDP_PROTOCOL = 'rdp' RDP_PROTOCOL = 'rdp'
PROTOCOL_CHOICES = ( PROTOCOL_CHOICES = (
...@@ -51,3 +51,5 @@ class Gateway(AssetUser): ...@@ -51,3 +51,5 @@ class Gateway(AssetUser):
def __str__(self): def __str__(self):
return self.name return self.name
class Meta:
unique_together = ['name', 'org']
...@@ -64,9 +64,6 @@ class Node(OrgModelMixin): ...@@ -64,9 +64,6 @@ class Node(OrgModelMixin):
def create_child(self, value): def create_child(self, value):
with transaction.atomic(): with transaction.atomic():
child_key = self.get_next_child_key() child_key = self.get_next_child_key()
print("Create child")
print(self.key)
print(child_key)
child = self.__class__.objects.create(key=child_key, value=value) child = self.__class__.objects.create(key=child_key, value=value)
return child return child
...@@ -123,8 +120,6 @@ class Node(OrgModelMixin): ...@@ -123,8 +120,6 @@ class Node(OrgModelMixin):
return self.get_all_assets().valid() return self.get_all_assets().valid()
def is_root(self): def is_root(self):
print(type(self.key))
print(self.key)
if self.key.isdigit(): if self.key.isdigit():
return True return True
else: else:
...@@ -159,7 +154,6 @@ class Node(OrgModelMixin): ...@@ -159,7 +154,6 @@ class Node(OrgModelMixin):
if self.is_root(): if self.is_root():
root = self.__class__.root() root = self.__class__.root()
return [root] return [root]
print(self.key)
_key = self.key.split(':') _key = self.key.split(':')
if not with_self: if not with_self:
_key.pop() _key.pop()
...@@ -187,7 +181,6 @@ class Node(OrgModelMixin): ...@@ -187,7 +181,6 @@ class Node(OrgModelMixin):
@classmethod @classmethod
def root(cls): def root(cls):
root = cls.objects.filter(key__regex=r'^[0-9]+$') root = cls.objects.filter(key__regex=r'^[0-9]+$')
print("GET ROOT NODE")
if len(root) == 1: if len(root) == 1:
return root.get() return root.get()
else: else:
......
...@@ -69,6 +69,7 @@ class AdminUser(AssetUser): ...@@ -69,6 +69,7 @@ class AdminUser(AssetUser):
class Meta: class Meta:
ordering = ['name'] ordering = ['name']
unique_together = ['name', 'org']
verbose_name = _("Admin user") verbose_name = _("Admin user")
@classmethod @classmethod
...@@ -156,6 +157,7 @@ class SystemUser(AssetUser): ...@@ -156,6 +157,7 @@ class SystemUser(AssetUser):
class Meta: class Meta:
ordering = ['name'] ordering = ['name']
unique_together = ['name', 'org']
verbose_name = _("System user") verbose_name = _("System user")
@classmethod @classmethod
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment