【问题标题】:Django Python - Can`t install fixtures in test databaseDjango Python - 无法在测试数据库中安装夹具
【发布时间】:2022-11-03 15:46:48
【问题描述】:

嗨,大家好

遇到一些问题,为什么要在 Django 测试数据库中加载夹具。

  1. 我通过 exec 命令制作了 DB 的夹具
    python manage.py dumpdata misxapp --format=yaml --indent=4 >  misxapp/fixtures/misxapp.yaml
    
    1. 在 misxapp.tests.py 中,我使用 StaticLiveServerTestCase 类属性“fixtures”
    fixtures = ['misxapp']
    
    1. 然后我运行测试
    python manage.py test misxapp.tests.TestAuthorization.test_login
    

    并获得异常

    psycopg2.errors.UndefinedColumn: ERROR:  column "date" in table "misxapp_insurancepolicy" doesn't exist.
    LINE 1: ..., "organization_id_id" = 34, "person_id_id" = 23, "date" = '...
    

    !!!但 !!!

    models.py 文件和 Postgresql 数据库中都存在“日期”列(表 misxapp_insurancepolicy)

    我认为问题在于 Postgresql 中日期字段的命名,但完全不确定。 请告诉我往哪个方向挖,谢谢!!!

【问题讨论】:

    标签: django django-models django-tests django-fixtures


    【解决方案1】:

    有必要再次进行迁移,因为上次迁移文件已过期并且创建的 test_db 没有某些列

    xD

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-03-10
      • 1970-01-01
      • 1970-01-01
      • 2013-10-24
      • 1970-01-01
      • 2012-08-12
      • 2011-06-07
      • 2014-12-20
      相关资源
      最近更新 更多