Python 无法使用django将嵌入文档插入模型

Python 无法使用django将嵌入文档插入模型,python,django,web,Python,Django,Web,我无法使用django在模型中创建嵌入文档,我使用django作为我的数据库。它一直告诉我,我的值必须是model:的实例,即使我已经创建了模型中的所有字段。我真的需要一些帮助 我的模型: class SMSHistory(models.Model): ThoiGian = models.DateField(default=datetime.date.today,null=True,blank=True) SoDienThoai = models.CharField(max_le

我无法使用django在模型中创建嵌入文档,我使用django作为我的数据库。它一直告诉我,我的值必须是model:
的实例,即使我已经创建了模型中的所有字段。我真的需要一些帮助

我的模型:

class SMSHistory(models.Model):
    ThoiGian = models.DateField(default=datetime.date.today,null=True,blank=True)
    SoDienThoai = models.CharField(max_length=100,null=True,blank=True)
    SeriNo = models.CharField(max_length=100,null=True,blank=True)
    Count = models.IntegerField(default=0,null=True,blank=True)
class WebHistory(models.Model):
    ThoiGian = models.DateField(default=datetime.date.today,null=True,blank=True)
    DiaChiIP = models.CharField(max_length=100,null=True,blank=True)
    SoDienThoai = models.CharField(max_length=100,null=True,blank=True)
    SeriNo = models.CharField(max_length=100,null=True,blank=True)
    Count = models.IntegerField(default=0,null=True,blank=True)
class AppHistory(models.Model):
    ThoiGian = models.DateField(default=datetime.date.today,null=True,blank=True)
    DiaChiIP = models.CharField(max_length=100,null=True,blank=True)
    SoDienThoai = models.CharField(max_length=100,null=True,blank=True)
    SeriNo = models.CharField(max_length=100,null=True,blank=True)
    Count = models.IntegerField(default=0,null=True,blank=True)
class CallHistory(models.Model):
    ThoiGian = models.DateField(default=datetime.date.today,null=True,blank=True)
    SoDienThoai = models.CharField(max_length=100,null=True,blank=True)
    SeriNo = models.CharField(max_length=100,null=True,blank=True)
    Count = models.IntegerField(default=0,null=True,blank=True)
class History(models.Model):
    MaTem = models.CharField(max_length=100,null=True,blank=True)
    MaSP = models.CharField(max_length=100,null=True,blank=True)
    SMS = models.EmbeddedModelField(
        model_container = SMSHistory
    )
    App = models.EmbeddedModelField(
        model_container = AppHistory
    )
    Web = models.EmbeddedModelField(
        model_container = WebHistory
    )
    Call = models.EmbeddedModelField(
        model_container = CallHistory
    )

我的观点


    class check(View):
    def get(self,request):
        return render(request,'website/main.html')
    def post(self,request):
        matem=request.POST.get('txtCheck')
        print(matem)
        temp=khotemact.objects.filter(MaTem=matem)
        print(temp[0])
        tim=History.objects.filter(MaTem=temp[0].MaTem)
        if len(tim)==0:
            print('khong co')
            them=History.objects.create(MaTem=temp[0].MaTem,MaSP='123',
            SMS={'ThoiGian':'2010-1-1','SoDienThoai':'12324','SeriNo':'12343','Count':0},
            App={'ThoiGian':'2010-1-1','DiaChiIP':'1','SoDienThoai':'12324','SeriNo':'1236','Count':0},
            Web={'ThoiGian':'2010-1-1','DiaChiIP':'1','SoDienThoai':'12324','SeriNo':'1236','Count':0},
            Call={'ThoiGian':'2010-1-1','SoDienThoai':'1233','SeriNo':'123','Count':0}
            )
            them.save()
        else:
            print('co')
            # History.objects.filter(MaTem=temp[0].MaTem).update(Web={'Count':Count+1})
        return HttpResponse('oke')

我收到了这样一个错误


    ValueError at /website/check/
Value: {'ThoiGian': '2010-1-1', 'SoDienThoai': '12324', 'SeriNo': '12343', 'Count': 0} must be instance of Model: <class 'django.db.models.base.Model'>


值错误位于/网站/检查/
值:{'ThoiGian':'2010-1-1','SoDienThoai':'12324','SeriNo':'12343','Count':0}必须是模型的实例:

谢谢

正如错误所说,您应该使用模型实例,并且您正在使用dict

错误的 正确的
SMS={'ThoiGian':'2010-1-1','SoDienThoai':'12324','SeriNo':'12343','Count':0}
SMS = SMSHistory.objects.create(ThoiGian='2010-1-1', SoDienThoai='12324',SeriNo='12343', Count=0)