Django models 如何在django中通过uuid4获取正确的UUID格式而不获取连字符?

Django models 如何在django中通过uuid4获取正确的UUID格式而不获取连字符?,django-models,django-forms,uuid,Django Models,Django Forms,Uuid,我是新手,我正在尝试将uuid保存到我的模型中 正如所研究的,uuid的正确格式是- UUID表示为32个十六进制(以16为基数)数字,以8-4-4-4-12的形式分五组显示,共36个字符(32个十六进制字符和4个连字符)。例如:123e4567-e89b-12d3-a456-426614174000 但当我保存表单时,它会将我的UUID呈现为字符串 0262d1dae7334d44b97b96f2915719ec 我的模特是- class registertable(models.Model)

我是新手,我正在尝试将uuid保存到我的模型中

正如所研究的,uuid的正确格式是- UUID表示为32个十六进制(以16为基数)数字,以8-4-4-4-12的形式分五组显示,共36个字符(32个十六进制字符和4个连字符)。例如:123e4567-e89b-12d3-a456-426614174000

但当我保存表单时,它会将我的UUID呈现为字符串
0262d1dae7334d44b97b96f2915719ec

我的模特是-

class registertable(models.Model):
    registeri=models.UUIDField(primary_key=True, default=uuid.uuid4,editable=False,unique=True)
    date_of_collection=models.DateField()
请帮忙,因为当我用它来保存和更新表单时,它会给我以下错误- ['“”不是有效的UUID。“]

编辑

视图.py

def collection(request):
    if request.method=='GET':
            return render (request,'register/collection.html',{'form':collectionform()})
    else:
        form=collectionform(request.POST)
        newcollectionform=form.save(commit=False)
        newcollectionform.save()
        return render (request,'register/collection.html',{'form':collectionform()})
class Meta:
        model = registertable
        fields = ['date_of_collection']
        widgets = {
            'date_of_collection':DateInput(),
}
/head>
<body>
    <form  action="" method="POST">
    {% csrf_token %}
    </div>
    {{ form.as_table }}
    <input id="submit" type="submit" value="Submit">
    </form>
    <script>
        $(function () {
          $("#datetimepicker1").datetimepicker();
        });
      </script>
      <script>
      $(function () {
        $('.selectpicker').selectpicker();
    });
    </script>
</body>
def seecollection(request):
        collections=registertable.objects.all()
        return render(request,'register/seecollection.html',{'collections':collections})
def editcollection(request,registertable_pk):
        #pk=self.kwargs.get('collection_pk')
        collection=get_object_or_404(registertable,pk=registertable_pk)
        if request.method=='GET':
                form=collectionform(instance=collection)
                return render(request,'register/editcollection.html',{'collection':collection,'form':form})
        else:
                try:
                        form=collectionform(request.POST,instance=collection,)
                        form.save()
                        return redirect('seecollection')
                except ValueError:
                        return render(request,'register/editcollection.html',{'collection':collection,'form':form,'error':'Incorrect Entry'})
forms.py

def collection(request):
    if request.method=='GET':
            return render (request,'register/collection.html',{'form':collectionform()})
    else:
        form=collectionform(request.POST)
        newcollectionform=form.save(commit=False)
        newcollectionform.save()
        return render (request,'register/collection.html',{'form':collectionform()})
class Meta:
        model = registertable
        fields = ['date_of_collection']
        widgets = {
            'date_of_collection':DateInput(),
}
/head>
<body>
    <form  action="" method="POST">
    {% csrf_token %}
    </div>
    {{ form.as_table }}
    <input id="submit" type="submit" value="Submit">
    </form>
    <script>
        $(function () {
          $("#datetimepicker1").datetimepicker();
        });
      </script>
      <script>
      $(function () {
        $('.selectpicker').selectpicker();
    });
    </script>
</body>
def seecollection(request):
        collections=registertable.objects.all()
        return render(request,'register/seecollection.html',{'collections':collections})
def editcollection(request,registertable_pk):
        #pk=self.kwargs.get('collection_pk')
        collection=get_object_or_404(registertable,pk=registertable_pk)
        if request.method=='GET':
                form=collectionform(instance=collection)
                return render(request,'register/editcollection.html',{'collection':collection,'form':form})
        else:
                try:
                        form=collectionform(request.POST,instance=collection,)
                        form.save()
                        return redirect('seecollection')
                except ValueError:
                        return render(request,'register/editcollection.html',{'collection':collection,'form':form,'error':'Incorrect Entry'})
HTML.py

def collection(request):
    if request.method=='GET':
            return render (request,'register/collection.html',{'form':collectionform()})
    else:
        form=collectionform(request.POST)
        newcollectionform=form.save(commit=False)
        newcollectionform.save()
        return render (request,'register/collection.html',{'form':collectionform()})
class Meta:
        model = registertable
        fields = ['date_of_collection']
        widgets = {
            'date_of_collection':DateInput(),
}
/head>
<body>
    <form  action="" method="POST">
    {% csrf_token %}
    </div>
    {{ form.as_table }}
    <input id="submit" type="submit" value="Submit">
    </form>
    <script>
        $(function () {
          $("#datetimepicker1").datetimepicker();
        });
      </script>
      <script>
      $(function () {
        $('.selectpicker').selectpicker();
    });
    </script>
</body>
def seecollection(request):
        collections=registertable.objects.all()
        return render(request,'register/seecollection.html',{'collections':collections})
def editcollection(request,registertable_pk):
        #pk=self.kwargs.get('collection_pk')
        collection=get_object_or_404(registertable,pk=registertable_pk)
        if request.method=='GET':
                form=collectionform(instance=collection)
                return render(request,'register/editcollection.html',{'collection':collection,'form':form})
        else:
                try:
                        form=collectionform(request.POST,instance=collection,)
                        form.save()
                        return redirect('seecollection')
                except ValueError:
                        return render(request,'register/editcollection.html',{'collection':collection,'form':form,'error':'Incorrect Entry'})
HTML

{% include 'partical/_alert.html'%}
    <form  action="POST">
      {% csrf_token %}
      {{form.as_p}}
    <input id="submit" type="submit" value="Submit">
    </form>
        <script>
{%include'particial/\u alert.html%}
{%csrf_令牌%}
{{form.as_p}}

它表示空字符串不是有效的uuid,因此问题可能是表单无法工作。您可以共享引发此错误的视图和模板吗?@WillemVanOnsem hey请检查edits0262d1dae7334d44b97b96f2915719ec此id已从数据库复制,因此我们可以说这正在生成uuid