From 26a8bce2c36972e1aa76630aee28dba93413e704 Mon Sep 17 00:00:00 2001 From: ibuler Date: Sat, 15 Oct 2016 23:34:02 +0800 Subject: [PATCH] Change auto_now to auto_now_add --- apps/assets/models.py | 20 ++++++++++---------- apps/audits/models.py | 8 ++++---- apps/perms/models.py | 2 +- apps/terminal/models.py | 13 ++++++++++--- 4 files changed, 25 insertions(+), 18 deletions(-) diff --git a/apps/assets/models.py b/apps/assets/models.py index b4a40fe64..2f7daf361 100644 --- a/apps/assets/models.py +++ b/apps/assets/models.py @@ -19,7 +19,7 @@ class IDC(models.Model): address = models.CharField(max_length=128, blank=True, verbose_name=_("Address")) intranet = models.TextField(blank=True, verbose_name=_('Intranet')) extranet = models.TextField(blank=True, verbose_name=_('Extranet')) - date_created = models.DateTimeField(auto_now=True, null=True, verbose_name=_('Date added')) + date_created = models.DateTimeField(auto_now_add=True, null=True, verbose_name=_('Date added')) operator = models.CharField(max_length=32, blank=True, verbose_name=_('Operator')) created_by = models.CharField(max_length=32, blank=True, verbose_name=_('Created by')) comment = models.TextField(blank=True, verbose_name=_('Comment')) @@ -62,7 +62,7 @@ class AssetExtend(models.Model): key = models.CharField(max_length=64, verbose_name=_('KEY')) value = models.CharField(max_length=64, verbose_name=_('VALUE')) created_by = models.CharField(max_length=32, blank=True, verbose_name=_("Created by")) - date_created = models.DateTimeField(auto_now=True, null=True) + date_created = models.DateTimeField(auto_now_add=True, null=True) comment = models.TextField(blank=True, verbose_name=_('Comment')) def __unicode__(self): @@ -98,7 +98,7 @@ class AdminUser(models.Model): _public_key = models.CharField(max_length=4096, blank=True, verbose_name=_('SSH public key')) as_default = models.BooleanField(default=False, verbose_name=_('As default')) comment = models.TextField(blank=True, verbose_name=_('Comment')) - date_created = models.DateTimeField(auto_now=True, null=True) + date_created = models.DateTimeField(auto_now_add=True, null=True) created_by = models.CharField(max_length=32, null=True, verbose_name=_('Created by')) def __unicode__(self): @@ -169,7 +169,7 @@ class SystemUser(models.Model): shell = models.CharField(max_length=64, default='/bin/bash', verbose_name=_('Shell')) home = models.CharField(max_length=64, blank=True, verbose_name=_('Home')) uid = models.IntegerField(null=True, blank=True, verbose_name=_('Uid')) - date_created = models.DateTimeField(auto_now=True) + date_created = models.DateTimeField(auto_now_add=True) created_by = models.CharField(max_length=32, blank=True, verbose_name=_('Created by')) comment = models.TextField(max_length=128, blank=True, verbose_name=_('Comment')) @@ -243,7 +243,7 @@ class AssetGroup(models.Model): name = models.CharField(max_length=64, unique=True, verbose_name=_('Name')) system_users = models.ManyToManyField(SystemUser, related_name='asset_groups', blank=True) created_by = models.CharField(max_length=32, blank=True, verbose_name=_('Created by')) - date_created = models.DateTimeField(auto_now=True, null=True, verbose_name=_('Date added')) + date_created = models.DateTimeField(auto_now_add=True, null=True, verbose_name=_('Date added')) comment = models.TextField(blank=True, verbose_name=_('Comment')) def __unicode__(self): @@ -321,7 +321,7 @@ class Asset(models.Model): sn = models.CharField(max_length=128, null=True, blank=True, verbose_name=_('Serial number')) created_by = models.CharField(max_length=32, null=True, blank=True, verbose_name=_('Created by')) is_active = models.BooleanField(default=True, verbose_name=_('Is active')) - date_created = models.DateTimeField(auto_now=True, null=True, blank=True, verbose_name=_('Date added')) + date_created = models.DateTimeField(auto_now_add=True, null=True, blank=True, verbose_name=_('Date added')) comment = models.TextField(max_length=128, null=True, blank=True, verbose_name=_('Comment')) tags = models.ManyToManyField('Tag', verbose_name='标签集合', blank=True) @@ -365,15 +365,15 @@ class Asset(models.Model): class Tag(models.Model): - name = models.CharField('标签名', max_length=64,unique=True) - created_time = models.DateTimeField('创建时间', auto_now_add=True) + name = models.CharField(max_length=64, unique=True, verbose_name=_('Name')) + created_time = models.DateTimeField(auto_now_add_add=True, verbose_name=_('Create time')) created_by = models.CharField(max_length=32, null=True, blank=True, verbose_name=_('Created by')) - def __str__(self): - return self.name def __unicode__(self): return self.name + __str__ = __unicode__ + class Meta: db_table = 'tag' diff --git a/apps/audits/models.py b/apps/audits/models.py index 731cc989b..2a920e55d 100644 --- a/apps/audits/models.py +++ b/apps/audits/models.py @@ -10,18 +10,18 @@ from django.utils.translation import ugettext_lazy as _ class LoginLog(models.Model): LOGIN_TYPE_CHOICE = ( ('W', 'Web'), - ('T', 'Terminal'), + ('S', 'SSH Terminal'), ('WT', 'Web Terminal') ) username = models.CharField(max_length=20, verbose_name=_('Username')) name = models.CharField(max_length=20, blank=True, verbose_name=_('Name')) - login_type = models.CharField(choices=LOGIN_TYPE_CHOICE, max_length=1, verbose_name=_('Login type')) + login_type = models.CharField(choices=LOGIN_TYPE_CHOICE, max_length=2, verbose_name=_('Login type')) login_ip = models.GenericIPAddressField(verbose_name=_('Login ip')) login_city = models.CharField(max_length=100, blank=True, null=True, verbose_name=_('Login city')) user_agent = models.CharField(max_length=100, blank=True, null=True, verbose_name=_('User agent')) from_terminal = models.ForeignKey - date_login = models.DateTimeField(auto_now=True, verbose_name=_('Date login')) + date_login = models.DateTimeField(auto_now_add=True, verbose_name=_('Date login')) date_logout = models.DateTimeField(null=True, verbose_name=_('Date logout')) class Meta: @@ -44,7 +44,7 @@ class ProxyLog(models.Model): log_file = models.CharField(max_length=1000, blank=True, null=True) was_failed = models.BooleanField(default=False, verbose_name=_('Did connect failed')) is_finished = models.BooleanField(default=False, verbose_name=_('Is finished')) - date_start = models.DateTimeField(auto_now=True, verbose_name=_('Date start')) + date_start = models.DateTimeField(auto_now_add=True, verbose_name=_('Date start')) date_finished = models.DateTimeField(null=True, verbose_name=_('Date finished')) def __unicode__(self): diff --git a/apps/perms/models.py b/apps/perms/models.py index fd4189d87..b771d086d 100644 --- a/apps/perms/models.py +++ b/apps/perms/models.py @@ -27,7 +27,7 @@ class AssetPermission(models.Model): is_active = models.BooleanField(default=True, verbose_name=_('Active')) date_expired = models.DateTimeField(default=date_expired_default, verbose_name=_('Date expired')) created_by = models.CharField(max_length=128, blank=True, verbose_name=_('Created by')) - date_created = models.DateTimeField(auto_now=True, verbose_name=_('Date created')) + date_created = models.DateTimeField(auto_now_add=True, verbose_name=_('Date created')) comment = models.TextField(verbose_name=_('Comment'), blank=True) def __unicode__(self): diff --git a/apps/terminal/models.py b/apps/terminal/models.py index 54449cd84..48caef6f5 100644 --- a/apps/terminal/models.py +++ b/apps/terminal/models.py @@ -7,13 +7,20 @@ from users.models import User class Terminal(models.Model): + TYPE_CHOICES = ( + ('S', 'SSH Terminal'), + ('WT', 'Web Terminal') + ) name = models.CharField(max_length=30, verbose_name=_('Name')) ip = models.GenericIPAddressField(verbose_name=_('From ip')) is_active = models.BooleanField(default=False, verbose_name=_('Is active')) is_bound_ip = models.BooleanField(default=False, verbose_name=_('Is bound ip')) heatbeat_interval = models.IntegerField(default=60, verbose_name=_('Heatbeat interval')) - mail_to = models.ManyToManyField(User, verbose_name=_('Mail to ')) - date_created = models.DateTimeField(auto_now=True) + type = models.CharField(choices=TYPE_CHOICES, max_length=2, verbose_name=_('Terminal type')) + ssh_host = models.CharField(max_length=100, verbose_name=_('SSH host')) + ssh_port = models.IntegerField(verbose_name=_('SSH port')) + mail_to = models.ManyToManyField(User, verbose_name=_('Mail to')) + date_created = models.DateTimeField(auto_now_add=True) comment = models.TextField(verbose_name=_('Comment')) class Meta: @@ -22,7 +29,7 @@ class Terminal(models.Model): class TerminalHeatbeat(models.Model): - terminal = models.ForeignKey(Terminal, on_delete=models.SET_NULL) + terminal = models.ForeignKey(Terminal, on_delete=models.CASCADE) date_timestamp = models.IntegerField() class Meta: