Django中的相对夹具路径无法在Windows上运行

时间:2014-10-07 01:01:10

标签: django django-fixtures

我有一个Django 1.6.6项目,它没有在Windows 8.1上使用Python 2.7.8从相对路径加载灯具。在Linux中运行得很好。

示例测试用例:

# cart/tests.py

class CartTestBase(TestCase):
    fixtures = ['products/fixtures/product_categories.json',
    'products/fixtures/brands.json', 'products/fixtures/products.json']

适合目录结构:

ecomm_app/
    cart/
        __init__.py
        models.py
        tests.py
        . . .

    products/
        fixtures/
            products/fixtures/product_categories.json
            products/fixtures/brands.json
            products/fixtures/products.json
        __init__.py
        models.py
        . . .

具体的错误信息是:

UserWarning: No fixture named 'products/fixtures/products' found.
warnings.warn("No fixture named '%s' found." % fixture_name)

相应的应用模块列在INSTALLED_APPS中,否则可以正常工作。指定绝对路径确实有效,但显然不是跨平台的。指定根相对路径不起作用,例如:/products/fixtures/brands.json

这些装置发生了什么事?

1 个答案:

答案 0 :(得分:0)

所以,问题是在Windows中没有正确规范化灯具的路径。我提交了一个被接受的拉取请求,所以希望在1.7.1之后的Django的下一个版本中出现