有没有使用dump_data在Django中创建夹具的简单方法?

时间:2016-02-03 06:33:07

标签: django

是否有一种简单的方法来创建灯具,而不使用dump_data?我们有一个复杂的数据库,它似乎直接创建灯具,而不使用dump_data意味着很多工作。

我可以创建对象并将它们写入json,以便它们可以用作灯具吗?

请注意,我们正在使用多个应用程序,并在应用程序之间引用数据。

2 个答案:

答案 0 :(得分:1)

我已经使用Django Dynamic Fixtures好几年了,发现它真的很棒。它根据您的模型定义生成夹具。

如果您有模型Project,您可以使用命令G(Project)在测试环境中生成灯具,并可选择使用G(Project, name='test')等进行自定义。

from django_dynamic_fixture import G
from apps.projects.models import Project

class TestProject(TestCase):
    """
    Test project name
    """
    def setUp(self):
        self.project1 = G(Project)
        self.project2 = G(Project, name="my project")

    def test_project(self):
        self.assertTrue(self.project1)

    def test_name(self):
        self.assertEqual(self.project2.name, "my project")

答案 1 :(得分:0)

如何使用DRF的序列化器? (或您熟悉的任何图书馆)

您可以使用DRF轻松地将对象序列化为json。

只需将它们输出到文件。