我有一个Django 1.8应用程序,其初始迁移依赖于django-interval-field,如下所示:
import interval.fields
migrations.CreateModel(
name='Item',
fields=[
...
('estimated_time', interval.fields.IntervalField(null=True, blank=True)),
我已经迁移了这个字段以使用Django的内置DurationField,我不再使用这个模块,但我需要将它保存在requirements.txt中,以便我的迁移运行。
但是,尝试升级到Django 1.9时,此模块会抛出错误。另外,我不能永远保持这个模块。摆脱它会很好。
我尝试过压缩迁移,但是压缩的迁移仍然包含import interval.fields
语句,并创建了interval字段。所有挤压都将所有内容连接成一个文件。
有人可以告诉我如何继续删除此模块吗?
有问题的Django应用是here。
答案 0 :(得分:5)
所以,你的挤压并不是真正的压扁
requirements.txt
import interval.fields
models.py
interval.fields.IntervalField(xxx)
修改为相关my_app_label/migrations/1234_some_migrations.py
答案 1 :(得分:1)
在所有迁移文件中,找到interval.fields.IntervalField
的所有声明(对于相关的模型字段),并替换为IntegerField
。
只要你没有在迁移过程中使用Interval字段的数据迁移,你应该没问题。