如何将当前站点的用户表(mysql + md5密码)迁移到我的新django postgres设置?

时间:2010-03-07 06:28:12

标签: php mysql django migration

我目前在PHP / MYSQL中设置了一个新闻网站,它有点旧,我正在将它迁移到使用Postgresql 8.4和Psycopg2的新django站点。

Django的管理模型包含一个auth_user表,我怀疑这是我需要将所有用户行插入的表。

Q#1 :我应该依赖这个已经制作的表格,当我将syncdb与管理员联系起来时,对吗?

似乎使用sha1加密密码,superadmin的密码长度为51个字符,密码字段为VARCHAR(128)

Q#2 :我别无选择,只能强制用户从其存储的电子邮件地址创建新密码?最好只保留密码列,因为SHA1可能比MD5更安全。

问题3:如果我要为此auth_user表添加自定义列以查找aim_username以及其他各种用户特定列等内容,那么管理员不知何故?我是否需要在某处覆盖默认的管理模型?

1 个答案:

答案 0 :(得分:3)

我不确定你问的问题是什么。

对于问题2,如果您想要向用户无缝过渡,您可以做的是维护用户原始密码的列表。当有人尝试登录时,您在原始列表中查找他们的电子邮件,并根据您在数据库中的记录检查他们登录的密码的md5。如果匹配,请从原始表中删除记录,并通过散列表单中的密码来更新auth_user表中的密码记录。

对于问题3,Django允许您指定可包含所需的任何额外信息的用户配置文件模型。请查看:http://docs.djangoproject.com/en/dev/topics/auth/#storing-additional-information-about-users