我正在为我的项目运行datamigrations。我的目标是让用户关注在实施活动流之前创建的所有文章
我使用命令
创建了迁移文件python manage.py datamigration articles das_user_migrate_data --freeze auth --settings=maldio_project.settings.dev_keval
对于转发功能我有以下代码,
def forwards(self, orm):
registry.register(orm['articles.article'])
for articles in orm['articles.article'].objects.all():
user = orm['auth.User'].objects.get(username=article.submitter.username)
follow(user, article, actor_only=False)
我有适当的操作进口。但是在运行migrate
命令时,我收到以下错误
ValueError: Cannot assign "<User: User object>": "Follow.user" must be a "User" instance.
我已经看到了同样错误的其他问题,但提到的解决方案并不适用于我。
答案 0 :(得分:0)
没有看到你的&#34;关注&#34;函数我说你试图分配给关注对象实例的用户类与你在关注的FK中引用的用户类不同。
确保您没有为Django的用户创建子类。见django: must be a User Instance when trying to save, but it is!