2016-08-10 21 views
-1

フィールド名の変更も可能ですか?例えば、これは次のようになりフィールド名を継承したモデルから変更しますか?

をoriginal_ip_assign_tsするip_assign_ts ... はので、私は

class ChangeLog(IpHandlerModel): 
    id = models.AutoField(primary_key=True) 
    change_operations = models.CharField(max_length=1, choices=CHANGE_OPERATION_CHOICES) 
    change_type = models.CharField(max_length=3, choices=CHANGE_TYPE_CHOICES) 
    cust_uuid = models.UUIDField(default=uuid.uuid1) 
    ip_address = models.GenericIPAddressField() 
    ip_assign_ts = models.DateTimeField() 
    ip_source = models.CharField(max_length=4, choices=IP_ASSIGNMENT_SOURCE_CHOICES) 
    ip_source_device = models.CharField(max_length=255, null=True, blank=True) 
    ip_unassign_ts = models.DateTimeField(null=True, blank=True) 
    is_hacker_alert_cust = models.BooleanField() 
    mac_address = models.CharField(max_length=12) 
    mac_assign_ts = models.DateTimeField() 
    mac_unassign_ts = models.DateTimeField(null=True, blank=True) 
    status = models.CharField(max_length=7, choices=STATUS_CHOICES, default='SEND') 
    error_count = models.IntegerField(default=0) 

class ChangeLogArchive(ChangeLog): 
    def __init__(self, *args, **kwargs): 
    super(ChangeLogArchive, self).__init__(*args, **kwargs) 

ので、ChangeLogArchiveは、変更履歴を継承

二つのモデルを、持っている、と私は、変更履歴のフィールド名の一部を変更したいですでも可能ですか?

答えて

1

変更が可能かどうかわかりません。しかし、あなたができることは、新しい名前で新しいフィールドを作成することです。それを他のフィールドにリンクします。したがって、ChangeLogまたはChangeLogArchiveのいずれかの保存によって、新しいフィールドoriginal_ip_assign_tsの値が上書きされます。

単なるアイデアです。

+0

これは、すべてmodel.pyコード内で達成できます。 –

+0

これは実際には良いアイデアですhaha – PowerLove

+0

喜んで:) –

関連する問題