如何将标准的 Django 模型添加到夹具输出中?

How to add standard Django models to fixtures output?

提问人:Yurii Rabeshko 提问时间:8/25/2017 最后编辑:Yurii Rabeshko 更新时间:8/25/2017 访问量:651

问:

我尝试测试Django平面页面的扩展版本,并需要为它创建夹具。为自定义模型创建一个模型非常简单。例如,要为模型创建夹具,我应该在终端中执行以下命令:auth.User

$ python manage.py dumpdata auth.User > /path/to/fixture.json

如何对模块做同样的事情?(见下面的说明)django.flatpages


我扩展了模型,如下所示:django.contrib.flatpages.models.FlatPage

from django.db import models
from django.contrib.flatpages.models import FlatPage

class FooProject(models.Model):
    pass

class FooFlatPage(FlatPage):
    project = models.ForeignKey(FooProject)

当我执行命令时,上面的代码将在数据库中创建 4 个表(1 个表示 Django Flatpages,1 个表示 2 个)。migrateFooProjectFooFlatPage

现在,当我尝试为我的模块执行时:dumpdata

$ python manage.py dumpdata my_module > /path/to/fixture.json

...我只会得到 2 个表的转储(平面页表除外)。文件:fixture.json

[
  {
    "model": "my_module.fooproject",
    "pk": 1
  },
  {
    "model": "my_module.fooflatpage",
    "pk": 1,
    "fields": {
      "project": 1
    }
  }
]

问题:如何为所有 (4) 个表创建数据转储?


当我尝试添加参数时,相同的输出。--verbosity=3

python django 单元测试 django-fixtures django-flatpages

评论


答: 暂无答案