我在创建自己的用户模型时犯了一个错误,正在尝试恢复。
我创建了一个南迁移,它复制了我的旧用户模型并创建了 django.contrib.auth.models.User 模型。为了确保我当前的用户不会被蒙在鼓里,我创建了一堆单元测试来确保一切都得到适当的转换。
所以,我需要测试一下南迁,看看它是否有效。为此,我需要在迁移运行之前加载旧用户类型的数据。我怎么做?
我在创建自己的用户模型时犯了一个错误,正在尝试恢复。
我创建了一个南迁移,它复制了我的旧用户模型并创建了 django.contrib.auth.models.User 模型。为了确保我当前的用户不会被蒙在鼓里,我创建了一堆单元测试来确保一切都得到适当的转换。
所以,我需要测试一下南迁,看看它是否有效。为此,我需要在迁移运行之前加载旧用户类型的数据。我怎么做?
当测试套件通过 运行时python manage.py test someapp
,首先 django 创建一个测试数据库,然后按顺序应用所有迁移,然后运行测试用例。因此,如果目标是测试迁移本身,则需要在迁移之前加载夹具数据。
您可以在迁移中添加一行或两行加载夹具,以应用您的模型更改只是为了测试,然后删除。
def forwards(self, orm):
from django.core import management
management.call_command('loaddata', 'myfixture.json')
... your migration
此外,您可以在某些已制作的 django 设置上添加条件,这样您以后就不必编辑代码了。
称为数据迁移:http ://south.aeracode.org/docs/tutorial/part3.html享受!