1. 程式人生 > >server端操作

server端操作

cnblogs server cor code model delete item message times

from repository import models

class Disk(object):
    def __init__(self,server_obj,info):
        self.server_obj=server_obj
        self.disk_dict=info
    def prcoess(self):
        new_disk_list = self.disk_dict[data]

        # new_disk_list = server_dict[‘disk‘][‘data‘]
        # print(new_disk_list)
old_disk_list = models.Disk.objects.all() # print(old_disk_list) new_disk = set(new_disk_list.keys()) message = {} old_disk = {obj.slot for obj in old_disk_list} for obj in old_disk_list: message[obj.slot] = obj # print(message.keys())
# print(message) add_differences_disk = new_disk - old_disk temp = [] # 新的有,數據庫沒有 for i in add_differences_disk: values = new_disk_list[i] values[server_obj] =self. server_obj conent = "添加硬盤詳細信息[%s]" % values temp.append(conent) models.Disk.objects.create(
**values) if temp: models.ServerRecord.objects.create(server_obj=self.server_obj, content=;.join(temp)) # 刪除硬盤 新的數據沒有,數據庫有 temp = [] del_differences_disk = old_disk - new_disk for i in del_differences_disk: k = message.get(i).values conent = "刪除硬盤為[%s]" % k models.Disk.objects.filter(slot__in=i).delete() temp.append(conent) if temp: models.ServerRecord.objects.create(server_obj=self.server_obj, content=;.join(temp)) # 找到兩個相同的id號 update_disk = new_disk & old_disk temp = [] for i in update_disk: new_values = new_disk_list[i] disk_f = models.Disk.objects.filter(slot=i).first() for i, new_values_new in new_values.items(): old_values = getattr(disk_f, i) if new_values_new != old_values: setattr(disk_f, i, new_values_new) conent = "[%s]的[%s]由[%s]更改為[%s]" % (self.server_obj, i, old_values, new_values_new) temp.append(conent) disk_f.save() if temp: models.ServerRecord.objects.create(server_obj=self.server_obj, content=;.join(temp))
PLUGIN_TIMES={
    "nic": "api.plugins.nic.Nic",
    "disk": "api.plugins.disk.Disk",

    "memory": "api.plugins.memory.Memory",
}

技術分享

技術分享

技術分享

server端操作