2013-05-17 47 views
2

我已經將cygwin上的cygwin和python更新爲2.7,現在我無法使用Django中的loaddata management命令將任何json文件加載到數據庫。 (使用SQLite3作爲數據庫後端)cygwin上的Django loaddata命令在安裝fixtures(SQLite3數據庫)時返回錯誤

它適用於只有一個數據實例的燈具。如果有兩個或更多的失敗,像這樣的第二個:

DatabaseError: Problem installing fixture 'myapp/fixtures/initial_data.json': Could not load myapp.MyModel(pk=2): unable 
to open database file 

有沒有其他人有這個問題?

一些額外的信息: 我已經試過這在cygwin在第二臺計算機上的全新安裝,並且我嘗試了幾個我的django項目。這到處都是同樣的錯誤。

我敢肯定,只要在最新版本的cygwin上嘗試loaddata命令,任何人都可以重新創建此錯誤。

編輯

它適用於這個JSON文件:

[ 
{ 
    "pk": 1, 
    "model": "myapp.mymodel", 
    "fields": { 
     "title": "Some title" 
    } 
}] 

但沒有爲這一個:

[ 
{ 
    "pk": 1, 
    "model": "myapp.mymodel", 
    "fields": { 
     "title": "Some title" 
    } 
}, 
{ 
    "pk": 2, 
    "model": "myapp.mymodel", 
    "fields": { 
     "title": "Some other title" 
    } 
}] 
+0

你能檢查文件的權限嗎?它應該是可寫的。 –

+0

它是可寫的,因爲它只有一個數據實例纔有效。 – johnny

回答

1

大量的測試與cygwin的安裝程序我想通後解決問題的方法:

我卸載了libsqlite3和sqlite3 3.7.16,並安裝了sqlite3和libsqlite3 3.7.13版本。現在它工作了!

+1

這非常有幫助,謝謝!你應該接受你的答案是正確的。 – sdasdadas

1

我有同樣的問題,並通過從版本3.7.16升級到版本3.8.2修復它。

換句話說:降級不是唯一的解決方案,升級工作也是!特別是版本3.7.16,似乎是問題所在。

相關問題