Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将图纸转换为无显式列名的Django对象_Django_Excel_Python 3.x_Django Models_Django Rest Framework - Fatal编程技术网

将图纸转换为无显式列名的Django对象

将图纸转换为无显式列名的Django对象,django,excel,python-3.x,django-models,django-rest-framework,Django,Excel,Python 3.x,Django Models,Django Rest Framework,我使用的当前应用程序逐行解析图纸数据,并基于指定的一组列名为每行创建一个Django对象 下一步是扩展应用程序,使其在Django模型中不显式指定列名的情况下工作。数据(必须存储两个名称+值))可以作为显式属性存储,也可以存储在具有键->值映射的数据结构中。分类方法将用于根据学习算法对数据进行分类 如果事先不知道列名,如何做同样的事情 models.py: class Samplemodel(models.Model): Name = models.CharField(max_lengt

我使用的当前应用程序逐行解析图纸数据,并基于指定的一组列名为每行创建一个Django对象

下一步是扩展应用程序,使其在Django模型中不显式指定列名的情况下工作。数据(必须存储两个名称+值))可以作为显式属性存储,也可以存储在具有键->值映射的数据结构中。分类方法将用于根据学习算法对数据进行分类

如果事先不知道列名,如何做同样的事情

models.py:

class Samplemodel(models.Model):
    Name = models.CharField(max_length=200, blank=True, null=True)
    Phone = models.CharField(max_length=200, blank=True, null=True)
    Email = models.CharField(max_length=200, blank=True, null=True)
    Other = models.CharField(max_length=200, blank=True, null=True)

    def __str__(self):
        return self.Name
序列化程序.py

class SamplemodelSerializer(serializers.ModelSerializer):
    class Meta:
        model = Samplemodel
        fields = ('Name', 'Phone', 'Email', 'Other')
models-generic.py:

class Genericmodel(models.Model):
    c1name = models.CharField(max_length=200, blank=True, null=True)
    c2name = models.CharField(max_length=200, blank=True, null=True)
    c3name = models.CharField(max_length=200, blank=True, null=True)
    c4name = models.CharField(max_length=200, blank=True, null=True)
    ...     
class GenericSerializer(serializers.ModelSerializer):
    class Meta:
        model = Samplemodel
        fields = ('c1name', 'c2name', 'c3name', 'c4name', ...)
serializers-generic.py:

class Genericmodel(models.Model):
    c1name = models.CharField(max_length=200, blank=True, null=True)
    c2name = models.CharField(max_length=200, blank=True, null=True)
    c3name = models.CharField(max_length=200, blank=True, null=True)
    c4name = models.CharField(max_length=200, blank=True, null=True)
    ...     
class GenericSerializer(serializers.ModelSerializer):
    class Meta:
        model = Samplemodel
        fields = ('c1name', 'c2name', 'c3name', 'c4name', ...)

我真的不明白你为什么需要两个模型


将未知值输入分类器。一些你如何得到你的4类概率(姓名,电话等)。使用最大概率标记未知值。对其他模型重复此过程,然后保存原始模型。您可能需要一些规则来解决歧义

首先,我不需要两个模型。第一个是我现在拥有的当前模型,第二个是更改后的相同模型,以便可以用通用数据填充。