美文网首页
django django.db.utils.Operation

django django.db.utils.Operation

作者: Jayce_xi | 来源:发表于2019-08-06 16:45 被阅读0次

    1. 问题描述

    Creating test database for alias 'default'...
    Traceback (most recent call last):
      File "/usr/local/lib/python3.6/site-packages/django/db/backends/utils.py", line 84, in _execute
        return self.cursor.execute(sql, params)
      File "/usr/local/lib/python3.6/site-packages/django/db/backends/mysql/base.py", line 71, in execute
        return self.cursor.execute(query, args)
      File "/usr/local/lib/python3.6/site-packages/MySQLdb/cursors.py", line 206, in execute
        res = self._query(query)
      File "/usr/local/lib/python3.6/site-packages/MySQLdb/cursors.py", line 312, in _query
        db.query(q)
      File "/usr/local/lib/python3.6/site-packages/MySQLdb/connections.py", line 224, in query
        _mysql.connection.query(self, query)
    MySQLdb._exceptions.OperationalError: (1054, "Unknown column 'inference_version_status.traceback' in 'field list'")
    
    The above exception was the direct cause of the following exception:
    
    Traceback (most recent call last):
      File "manage.py", line 15, in <module>
        execute_from_command_line(sys.argv)
      File "/usr/local/lib/python3.6/site-packages/django/core/management/__init__.py", line 381, in execute_from_command_line
        utility.execute()
      File "/usr/local/lib/python3.6/site-packages/django/core/management/__init__.py", line 375, in execute
        self.fetch_command(subcommand).run_from_argv(self.argv)
      File "/usr/local/lib/python3.6/site-packages/django/core/management/commands/test.py", line 23, in run_from_argv
        super().run_from_argv(argv)
      File "/usr/local/lib/python3.6/site-packages/django/core/management/base.py", line 323, in run_from_argv
        self.execute(*args, **cmd_options)
      File "/usr/local/lib/python3.6/site-packages/django/core/management/base.py", line 364, in execute
        output = self.handle(*args, **options)
      File "/usr/local/lib/python3.6/site-packages/django/core/management/commands/test.py", line 53, in handle
        failures = test_runner.run_tests(test_labels)
      File "/usr/local/lib/python3.6/site-packages/django/test/runner.py", line 629, in run_tests
        old_config = self.setup_databases(aliases=databases)
      File "/usr/local/lib/python3.6/site-packages/django/test/runner.py", line 554, in setup_databases
        self.parallel, **kwargs
      File "/usr/local/lib/python3.6/site-packages/django/test/utils.py", line 174, in setup_databases
        serialize=connection.settings_dict.get('TEST', {}).get('SERIALIZE', True),
      File "/usr/local/lib/python3.6/site-packages/django/db/backends/base/creation.py", line 80, in create_test_db
        self.connection._test_serialized_contents = self.serialize_db_to_string()
      File "/usr/local/lib/python3.6/site-packages/django/db/backends/base/creation.py", line 123, in serialize_db_to_string
        serializers.serialize("json", get_objects(), indent=None, stream=out)
      File "/usr/local/lib/python3.6/site-packages/django/core/serializers/__init__.py", line 128, in serialize
        s.serialize(queryset, **options)
      File "/usr/local/lib/python3.6/site-packages/django/core/serializers/base.py", line 90, in serialize
        for count, obj in enumerate(queryset, start=1):
      File "/usr/local/lib/python3.6/site-packages/django/db/backends/base/creation.py", line 120, in get_objects
        yield from queryset.iterator()
      File "/usr/local/lib/python3.6/site-packages/django/db/models/query.py", line 341, in _iterator
        yield from self._iterable_class(self, chunked_fetch=use_chunked_fetch, chunk_size=chunk_size)
      File "/usr/local/lib/python3.6/site-packages/django/db/models/query.py", line 55, in __iter__
        results = compiler.execute_sql(chunked_fetch=self.chunked_fetch, chunk_size=self.chunk_size)
      File "/usr/local/lib/python3.6/site-packages/django/db/models/sql/compiler.py", line 1097, in execute_sql
        cursor.execute(sql, params)
      File "/usr/local/lib/python3.6/site-packages/django/db/backends/utils.py", line 67, in execute
        return self._execute_with_wrappers(sql, params, many=False, executor=self._execute)
      File "/usr/local/lib/python3.6/site-packages/django/db/backends/utils.py", line 76, in _execute_with_wrappers
        return executor(sql, params, many, context)
      File "/usr/local/lib/python3.6/site-packages/django/db/backends/utils.py", line 84, in _execute
        return self.cursor.execute(sql, params)
      File "/usr/local/lib/python3.6/site-packages/django/db/utils.py", line 89, in __exit__
        raise dj_exc_value.with_traceback(traceback) from exc_value
      File "/usr/local/lib/python3.6/site-packages/django/db/backends/utils.py", line 84, in _execute
        return self.cursor.execute(sql, params)
      File "/usr/local/lib/python3.6/site-packages/django/db/backends/mysql/base.py", line 71, in execute
        return self.cursor.execute(query, args)
      File "/usr/local/lib/python3.6/site-packages/MySQLdb/cursors.py", line 206, in execute
        res = self._query(query)
      File "/usr/local/lib/python3.6/site-packages/MySQLdb/cursors.py", line 312, in _query
        db.query(q)
      File "/usr/local/lib/python3.6/site-packages/MySQLdb/connections.py", line 224, in query
        _mysql.connection.query(self, query)
    django.db.utils.OperationalError: (1054, "Unknown column 'inference_version_status.traceback' in 'field list'")
    
    

    也是一个老问题了,在进行unit test的时候,出现了这个错误。

    2. 分析解决

    可以和明显发现说是没有找到一个model下面的一个字段,所以一般这种情况是出现在你修改了模型的情况下会出现。可以删除掉migrations文件,重新执行

    python manage.py makemigraions app-name
    

    相关文章

      网友评论

          本文标题:django django.db.utils.Operation

          本文链接:https://www.haomeiwen.com/subject/vokwdctx.html