存储数值数据的最有效Django模型

4
1个回答

4
一种方法是将numpy数组转换为字符串并将其存储在文本字段中。
base64.encodestring(nparray)

另一种方法是将数组转储到文件中,并将文本文件的路径存储在数据库中。

nparray.dump(file)

如果您想在Django中以结构化方式存储数据,那么您需要创建相应的模型。
您可以使用两个模型:
class Element(models.Model):
    Value = models.FloatField()
    Array = models.ForeignKey(Array)

class Array(models.Model):
    #Not required, just for illustration, use the id models instead
    Name = models.CharField('Name', max_length=100)

    Parent = models.ForeignKey(self, blank=True, null=True)

你可以将值存储在元素模型中,并使用数组模型创建结构。
例如,如果你有一个二维数组,可以按如下方式存储: [Array1, Array2, Array3] Array1 = [1,2,3] Array2 = [4,5,6] Array3 = [7,8,9]
Array('ParnetArray')

Array('Array1','ParentArray'),Array('Array2','ParentArray'),Array('Array3','ParentArray')

Element(1,'Array1'),Element(2,'Array1'),Element(3,'Array1'),Element(4',Array2'),Element(5,'Array2')...........

使用文本字段是否是正确的做法呢?如果我使用了文本字段,可能我将无法通过Django管理面板向列表添加数据。 - Pythontology
非常感谢您的帮助! - Pythontology

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接