【发布时间】:2020-11-22 13:27:57
【问题描述】:
在尝试实现 Django Social 时,我想我错过了某个地方的迁移,现在当我收到 twitter 重定向到该站点时,我收到以下错误。
Exception Value: (1054, "Unknown column 'social_auth_usersocialauth.created' in 'field list'")
我可以看到表已经创建,数据库表中没有两个值:
mysql> describe social_auth_usersocialauth;
+------------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+------------+--------------+------+-----+---------+----------------+
| id | int | NO | PRI | NULL | auto_increment |
| provider | varchar(32) | NO | MUL | NULL | |
| uid | varchar(255) | NO | | NULL | |
| extra_data | longtext | NO | | NULL | |
| user_id | int | NO | MUL | NULL | |
+------------+--------------+------+-----+---------+----------------+
5 rows in set (0.17 sec)
我想运行自定义迁移以将更新中缺少的两个字段添加到社交身份验证迁移,
class Migration(migrations.Migration):
dependencies = [
('dbdisplay', '0001_initial'),
('social_django', '0008_partial_timestamp'),
]
operations = [
migrations.AddField(
model_name='usersocialauth',
name='created',
field=models.DateTimeField(auto_now_add=True, default=mytz.now),
preserve_default=False,
),
migrations.AddField(
model_name='usersocialauth',
name='modified',
field=models.DateTimeField(auto_now=True),
),
]
但是迁移不理解我所指的模型,因为我运行迁移时出现错误:
KeyError: ('social_django', 'association')
如何在表不在应用命名空间中的迁移中使用 AddField?
【问题讨论】:
标签: python-3.x django twitter