代码之家  ›  专栏  ›  技术社区  ›  Ulvi

在服务器上添加夹具时出现反序列化错误(loaddata)

  •  0
  • Ulvi  · 技术社区  · 5 年前

    我正在尝试将数据添加到服务器的数据库中。我使用完全相同的 JSON 文件在我的本地机器中,它可以正常工作。但当我在服务器上做同样的事情时 Deserialization Error .

    这个 JSON 文件太大了,我不能在这里显示,但我确信没有输入错误。

    我完成了所有迁移和数据库工作-我可以从管理仪表板添加对象。如何解决此错误?

    我得到的错误:

        Traceback (most recent call last):
      File "/home/testuser/myprojectt/myvenv/lib/python3.8/site-packages/django/core/serializers/json.py", line 69, in Deserializer
        objects = json.loads(stream_or_string)
      File "/usr/lib/python3.8/json/__init__.py", line 357, in loads
        return _default_decoder.decode(s)
      File "/usr/lib/python3.8/json/decoder.py", line 337, in decode
        obj, end = self.raw_decode(s, idx=_w(s, 0).end())
      File "/usr/lib/python3.8/json/decoder.py", line 355, in raw_decode
        raise JSONDecodeError("Expecting value", s, err.value) from None
    json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
    
    The above exception was the direct cause of the following exception:
    
    Traceback (most recent call last):
      File "manage.py", line 22, in <module>
        main()
      File "manage.py", line 18, in main
        execute_from_command_line(sys.argv)
      File "/home/testuser/myprojectt/myvenv/lib/python3.8/site-packages/django/core/management/__init__.py", line 401, in execute_from_command_line
        utility.execute()
      File "/home/testuser/myprojectt/myvenv/lib/python3.8/site-packages/django/core/management/__init__.py", line 395, in execute
        self.fetch_command(subcommand).run_from_argv(self.argv)
      File "/home/testuser/myprojectt/myvenv/lib/python3.8/site-packages/django/core/management/base.py", line 330, in run_from_argv
        self.execute(*args, **cmd_options)
      File "/home/testuser/myprojectt/myvenv/lib/python3.8/site-packages/django/core/management/base.py", line 371, in execute
        output = self.handle(*args, **options)
      File "/home/testuser/myprojectt/myvenv/lib/python3.8/site-packages/django/core/management/commands/loaddata.py", line 72, in handle
        self.loaddata(fixture_labels)
      File "/home/testuser/myprojectt/myvenv/lib/python3.8/site-packages/django/core/management/commands/loaddata.py", line 114, in loaddata
        self.load_label(fixture_label)
      File "/home/testuser/myprojectt/myvenv/lib/python3.8/site-packages/django/core/management/commands/loaddata.py", line 172, in load_label
        for obj in objects:
      File "/home/testuser/myprojectt/myvenv/lib/python3.8/site-packages/django/core/serializers/json.py", line 74, in Deserializer
        raise DeserializationError() from exc
    django.core.serializers.base.DeserializationError: Problem installing fixture '/home/testuser/myprojectt/myprojectt/articles/fixtures/article.json': 
    

    已检查 JSON 一次又一次,但它仍然在本地工作,但在服务器上出现相同的错误。

    0 回复  |  直到 5 年前
        1
  •  0
  •   Ulvi    5 年前

    我在服务器上使用Ubuntu。而且没有 git-lfs 安装。要解决此问题,请执行以下操作:

    1. 安装时使用 sudo apt-get install git-lfs .

    2. 然后运行 git lfs pull 在项目目录中。

    然后我设法与 JSON 我想要的数据。

    推荐文章