私は今、なぜ、しかし1日から別のYに私がテストを実行しようとしたときに問題を持って始めません。 私は、Djangoの1.1(顧客の要求)を使用していると私はテストwhithを実行している場合:ジャンゴ:sqlite3.OperationalError:いいえ、そのようなテーブル
python manage.py test --setting=settingsTest
それは投げる:
Traceback (most recent call last):
File "manage.py", line 11, in <module>
execute_manager(settings)
File "/usr/lib/pymodules/python2.6/django/core/management/__init__.py", line 362, in execute_manager
...
File "/usr/lib/pymodules/python2.6/django/db/backends/sqlite3/base.py", line 193, in execute
return Database.Cursor.execute(self, query, params)
sqlite3.OperationalError: no such table: programas_act_actividadesprograma
しかし、私はsettingsTest.py
INSTALLED_APPS = (
'django.contrib.auth',
...
'site.programas_act',
...
)
であり、 /var/www/site/programas_act/models.py
class ActividadesPrograma(models.Model):
...
で0
私はsettingsTest.DATABASE_NAMEで指定されたファイルを削除して実行します。
python manage.py syncdb --setting=settingsTest
をまだ失敗。
私はDjangoのshell_plusで実行する場合:
import settings
print settings.INSTALLED_APPS
for app in settings.INSTALLED_APPS:
print app
私はアプリを見ることができますが、私は実行すると:
from django.db import connection
cursor = connection.cursor()
qry="""SELECT name FROM sqlite_master
WHERE type IN ('table','view') AND name NOT LIKE 'sqlite_%%'
UNION ALL
SELECT name FROM sqlite_temp_master
WHERE type IN ('table','view')
ORDER BY 1"""
cursor.execute(qry)
results = cursor.fetchall()
for tablename in results:
print tablename
私はそのテーブル名を見つけたことができません。
誰でも手伝ってもらえますか?
おかげ
これは、モデル内のテーブルが移行によって作成されなかった場合にも発生する可能性があります。参照:http://stackoverflow.com/a/39246325/1551116 –