因此pcaps表的定义是:
class Pcaps(models.Model):
uuid = models.CharField(max_length=50, unique=True)
filename = models.CharField(max_length=200, default='')
datetime = models.DateTimeField(default=datetime.now, blank=True)
filehash = models.ForeignKey(Malwares)
systemuuid = models.ForeignKey(ClonedSystem)
恶意软件表的定义是:
class Malwares(models.Model):
name = models.CharField(max_length=100)
filehash = models.CharField(max_length=100, unique=True)
来自views文件的代码是:
Pcaps.objects.update_or_create(filename=pcapname, filehash=filehash, systemuuid=uuid)
恶意软件值在以下位置实例化:
Malwares.objects.update_or_create(name=name, filehash=malwarehash)
我得到的错误是:
对于基数为10的int()的无效文字:' ed01ebfbc9eb5bbea545af4d01bf5f1071661840480439c6e5babe8e080e41aa'
(ed01 ...是filehash
值)
我在这里犯了什么错误?
答案 0 :(得分:1)
问题是您将 filehash
值参数设置为哈希字符串,而filehash
是ForeignKey
字段,它是一个整数默认值。
您可能打算首先创建Malwares
记录:
malware = Malwares.objects.create(name="name", filehash=malwarehash)
Pcaps.objects.update_or_create(filename=pcapname, filehash=malware, systemuuid=uuid)