當我試圖在我的活服務器上將數據轉儲到Djanog 1.2.1中的JSON fixture時遇到錯誤。在運行中的服務器上運行MySQL服務器版本5.0.77,並使用phpMyAdmin接口將大量數據導入到我的表中。該網站工作正常,Django管理員響應正常。但是,當我嘗試和實際轉儲對應表中的應用程序的數據我得到這個錯誤:在Django中,試圖轉儲數據時出現「錯誤:無法序列化數據庫」?
$ python manage.py dumpdata --indent=2 gigs > fixtures/gigs_100914.json
/usr/local/lib/python2.6/site-packages/MySQLdb/__init__.py:34: DeprecationWarning: the sets module is deprecated
from sets import ImmutableSet
Error: Unable to serialize database: Location matching query does not exist.
我的Django模型「演出」,我試圖從容貌傾倒這樣的車型.py文件:
就像我說的,Django對數據很好。該網站工作正常,關係似乎運作絕對好。當運行命令得到什麼SQL Django是使用:
$ python manage.py sql gigs
/usr/local/lib/python2.6/site-packages/MySQLdb/__init__.py:34: DeprecationWarning: the sets module is deprecated
from sets import ImmutableSet
BEGIN;CREATE TABLE `gigs_location` (
`id` integer AUTO_INCREMENT NOT NULL PRIMARY KEY,
`name` varchar(120)
)
;
CREATE TABLE `gigs_venue` (
`id` integer AUTO_INCREMENT NOT NULL PRIMARY KEY,
`name` varchar(120),
`contact` varchar(250),
`url` varchar(60)
)
;
CREATE TABLE `gigs_gig` (
`id` integer AUTO_INCREMENT NOT NULL PRIMARY KEY,
`date` date,
`details` varchar(250),
`location_id` integer NOT NULL,
`venue_id` integer NOT NULL
)
;
ALTER TABLE `gigs_gig` ADD CONSTRAINT `venue_id_refs_id_3d901b6d` FOREIGN KEY (`venue_id`) REFERENCES `gigs_venue` (`id`);
ALTER TABLE `gigs_gig` ADD CONSTRAINT `location_id_refs_id_2f8d7a0` FOREIGN KEY (`location_id`) REFERENCES `gigs_location` (`id`);COMMIT;
我三重檢查數據,經歷了以確保所有的關係和數據的導入後確定。但是我仍然遇到這個錯誤,三天之後......我堅持要做些什麼。我無法想象「棄用警告」在這裏會成爲一個問題。我真的需要將這些數據轉儲回JSON。
非常感謝任何幫助。
使用--traceback運行以查看潛在錯誤 – 2010-09-15 09:10:05
您是否設法找到錯誤?我跑了類似的情況試圖轉儲通過'inspectdb'獲得的一堆模型......我沒有得到'DoesNotExists'(可能是由於較新的版本)。但Django未能查找現有的庫侖... – tutuca 2016-04-24 05:21:00