2013-01-17 88 views
1

我有一個使用Django comments應用程序的Django 1.4網站。我正在升級我的開發版本到Django 1.5和extending the User model - 我有一個Person模型,它擴展了AbstractBaseUserAUTH_PROFILE_MODULE = 'membership.Person'在我的設置中。將現有的django_comments升級到Django 1.5

目前的django_comments PostgreSQL數據庫表中有一欄user_id它引用auth_user(id)

"django_comments_user_id_fkey" FOREIGN KEY (user_id) REFERENCES auth_user(id) DEFERRABLE INITIALLY DEFERRED 

沒有什麼在列,因爲,到目前爲止,也有在系統中沒有用戶帳戶,比我自己的其他管理員用戶。我想我需要更新表格來引用我的新Person模型(存儲在membership_person表中)。將來用戶將能夠創建賬戶併發布登錄評論。

什麼ALTER TABLE命令應該用來改變django_comments來指我的新Person模型?我必須做類似django_comment_flags表。還有什麼我應該留意的嗎?

回答

1

最後我做這個的意見表:

ALTER TABLE django_comments DROP CONSTRAINT django_comments_user_id_fkey; 
ALTER TABLE django_comments ADD CONSTRAINT django_comments_user_id_fkey FOREIGN KEY (user_id) REFERENCES membership_person(id) DEFERRABLE INITIALLY DEFERRED; 

而且類似的評論標誌表:

ALTER TABLE django_comment_flags DROP CONSTRAINT django_comment_flags_user_id_fkey; 
ALTER TABLE django_comment_flags ADD CONSTRAINT django_comment_flags_user_id_fkey FOREIGN KEY (user_id) REFERENCES membership_person(id) DEFERRABLE INITIALLY DEFERRED; 

希望,沒有工作並不會造成任何問題。 *十字手指*