1

我刚刚将我的 django 应用程序从 sqlite3 迁移到 mysql 5.1.41。我在这样定义的模型中有一个字符域:

class HostData(models.Model):
  Host = models.CharField(max_length=50, null=True)
  HostStatus = models.CharField(max_length=200, null=True)
  Alarm = models.BooleanField()

除了 HostStatus 之外,一切都一样,它通常返回一个类似“Up, waiting”的字符串。但是,在 mysql 中,它是空白的。我创建了我的表,其字符集为 utf-8。我究竟做错了什么?提前致谢。

4

2 回答 2

1

我看不出那个模型代码有什么问题。

您是如何将数据迁移到 MySQL 的?当您通过 django admin 输入数据时,它是否将数据输入到数据库中?

如果视图正在输入此数据,您能否发布视图代码。

于 2010-10-29T09:37:29.903 回答
0

问题是我将值分配给模型的方式。我不知道为什么它在 sqlite 中运行良好,但无论如何它都是糟糕的编码。这就是我正在做的事情:

myarray = stdout_ssh
myobject = test.object.get(id=3)
myobject.Host = stdout_ssh[0]
myobject.HostStatus = status
status = stdout_ssh[1]
myobject.Alarm = False
myobject.save()

我将其更改为:

myarray = stdout_ssh
myobject = test.object.get(id=3)
myobject.Host = stdout_ssh[0]
myobject.HostStatus = stdout_ssh[1]
myobject.Alarm = False
myobject.save()

一切都很好。

于 2010-10-30T06:24:40.573 回答