标签: django-fixtures

在django测试期间加载夹具时的IntegrityError

我正在加载使用dumpdata创建的fixture,并获得以下异常:

Problem installing fixture 'db_dump.json': Traceback (most recent call last):
  File "/usr/lib/python2.6/site-packages/django/core/management/commands/loaddata.py", line 174, in handle
    obj.save(using=using)
  File "/usr/lib/python2.6/site-packages/django/core/serializers/base.py", line 165, in save
    models.Model.save_base(self.object, using=using, raw=True)
  File "/usr/lib/python2.6/site-packages/django/db/models/base.py", line 526, in save_base
    rows = manager.using(using).filter(pk=pk_val)._update(values)
  File "/usr/lib/python2.6/site-packages/django/db/models/query.py", line 491, in _update
    return query.get_compiler(self.db).execute_sql(None)
  File "/usr/lib/python2.6/site-packages/django/db/models/sql/compiler.py", line 869, in execute_sql
    cursor = super(SQLUpdateCompiler, self).execute_sql(result_type)
  File "/usr/lib/python2.6/site-packages/django/db/models/sql/compiler.py", line 735, in execute_sql
    cursor.execute(sql, params)
  File "/usr/lib/python2.6/site-packages/django/db/backends/sqlite3/base.py", line 234, in execute
    return Database.Cursor.execute(self, query, params)
IntegrityError: columns app_label, model are not unique
Run Code Online (Sandbox Code Playgroud)

这是一个sqlite3后端.

更新:使用自然键在这里没有区别. …

django django-testing django-fixtures

24
推荐指数
2
解决办法
6902
查看次数

Django灯具中的图像?

我在文档中查看Django夹具,没有提到将图像预加载到数据库中.我不可能是唯一需要这样做的人.这可能吗?如果是这样的话?如果没有,是否有可用的解决方法?

谢谢,麻烦您了.

django image django-fixtures

20
推荐指数
2
解决办法
3532
查看次数

如何使用manage.py dumpdata创建更漂亮的灯具?

我试图以更漂亮的方式打印我的Django灯具.

我输出了灯具:
python manage.py dumpdata >> fixture_app.json

这将在一行中创建一个包含1000个字符的文件.当我尝试使用文本编辑器(TextMate)查看文件时,编辑器会挂起.

无论如何,是否可以使用多条线以更漂亮的方式导出灯具?

django django-fixtures

17
推荐指数
1
解决办法
5205
查看次数

一次加载多个灯具

无论如何加载一个夹具并装载多个夹具?

我最好输入:

python manage.py loaddata all_fixtures
Run Code Online (Sandbox Code Playgroud)

并且必须加载所有数据而不必键入所有内容.这可能吗?

django django-fixtures

16
推荐指数
5
解决办法
8273
查看次数

Django Sites Framework:初始数据迁移位置

在Django 1.7之前,当使用Django Sites Framework时,可以/应该使用Initial Fixtures定义初始数据.

的myproject /装置/ initial_data.json

[
{
    "pk": 1, 
    "model": "sites.site", 
    "fields": {
        "domain": "domain1", 
        "name": "name1"
    }
},
{
    "pk": 2, 
    "model": "sites.site", 
    "fields": {
        "domain": "domain2", 
        "name": "name2"
    }
},
{
    "pk": 3, 
    "model": "sites.site", 
    "fields": {
        "domain": "domain3", 
        "name": "name3"
    }
}
]
Run Code Online (Sandbox Code Playgroud)

由于它是一个全局项目设置,我在项目根目录中添加了一个"fixtures"文件夹,并将其添加到FIXTURE_DIRS.

# Used to search fixture files directories.
# Fixture files are files that provide initial data to be
# inserted in the database. (>python manage.py loaddata) …
Run Code Online (Sandbox Code Playgroud)

django-sites django-fixtures django-migrations

14
推荐指数
2
解决办法
3096
查看次数

是否启用了auto_now_add选项的DateTimeField必须在fixture中具有值

我有模型创建的字段可配置如下:

created = models.DateTimeField(auto_now_add=True)
Run Code Online (Sandbox Code Playgroud)

在JSON fixture中我不想为create创建值,但是当我尝试加载fixture(loadata)时,我收到错误:

created可能不是NULL

所以我必须在灯具中提供创造价值或者还有其他方法吗?

django django-models django-fixtures

10
推荐指数
1
解决办法
3375
查看次数

如何在django中使用QuerySet创建一个fixture?

Django dumpdata命令被破坏,因为它不支持任何合理的方法来缩小转储的数据量.我需要创建一个包含各种查询集的夹具(我不需要关心从外部模型关系中转储对象).限制这些查询集的项目数量,例如django-test-utils makefixture是不够的.试图通过使用具有自定义管理器的代理模型来实现这一点,但这种方法不起作用 - dumpdata省略了代理模型(这是合理的).

django django-models django-fixtures

10
推荐指数
2
解决办法
4414
查看次数

Django loaddata 忽略现有对象

我有一个带有条目列表的装置。例如:

[
  {
    "fields": {
      "currency": 1,
      "price": "99.99",
      "product_variant": 1
    },
    "model": "products.productprice",
    "pk": 1
  },
  {
    "fields": {
      "currency": 2,
      "price": "139.99",
      "product_variant": 1
    },
    "model": "products.productprice",
    "pk": 2
  }
]
Run Code Online (Sandbox Code Playgroud)

这只是每个条目的初始数据(价格可能会改变)。我希望能够向该装置添加另一个条目并加载它,loaddata但不更新数据库中已存在的条目。

有没有办法做到这一点?类似于--ignorenonexistent但对于现有条目。

python django loaddata django-fixtures

10
推荐指数
1
解决办法
844
查看次数

如何从夹具中添加Django中的超级用户

如何通过Django灯具添加SUPERuser(不仅仅是用户)?

假设我想登录:admin,密码:admin.

django django-fixtures

9
推荐指数
1
解决办法
2437
查看次数

关于夹具的Django测试抱怨

转储数据 python manage.py dumpdata --format json --indent 4 --exclude auth.permission --exclude contenttypes > app/fixtures/app_test_data.json

运行python manage.py测试应用程序,我收到以下错误:

IntegrityError: Problem installing fixtures: The row in table 'django_admin_log' with       primary key '517' has an invalid foreign key: django_admin_log.content_type_id contains a value '28' that does not have a corresponding value in django_content_type.id.
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?我使用dumpdata/Django的测试运行器有很多类似的问题.

django django-models django-testing django-fixtures

8
推荐指数
1
解决办法
1727
查看次数