Команда Django loaddata на cygwin возвращает ошибку при установке приборов (база данных SQLite3)
Я обновил cygwin и python на cygwin до 2.7, и теперь я не могу загрузить любые файлы json в базу данных с помощью команды управления загрузкой данных в Django. (Использование SQLite3 в качестве базы данных)
Это работает для прибора, который имеет только один экземпляр данных. Если есть два или более, это терпит неудачу на втором как это:
DatabaseError: Problem installing fixture 'myapp/fixtures/initial_data.json': Could not load myapp.MyModel(pk=2): unable
to open database file
Кто-нибудь еще сталкивался с этой проблемой?
Некоторая дополнительная информация: я попробовал это на новой установке cygwin на втором компьютере, и я попробовал это на нескольких моих проектах django. Это одна и та же ошибка везде.
Я почти уверен, что любой может воссоздать эту ошибку, просто попробовав команду loaddata в новейшей версии cygwin.
Редактировать:
это работает для этого файла 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"
}
}]
2 ответа
После долгих испытаний с установщиком cygwin я нашел решение проблемы:
Я удалил libsqlite3 и sqlite3 3.7.16 и вместо этого установил версию sqlite3 и libsqlite3 3.7.13. Теперь это работает!
У меня была та же проблема, и я исправил ее путем обновления с версии 3.7.16 до версии 3.8.2.
Другими словами: понижение рейтинга - не единственное решение, обновление тоже работает! Это именно версия 3.7.16, которая, как представляется, является проблемой.