2012-06-23 37 views
1

我正在Python 2.7中開發一個Web應用程序,使用Django 1.4和PyCharm 2.5作爲我的IDE和Postgres數據庫。我能夠運行manage.py命令(例如sqlsyncdb)來創建SQL和表,但其他命令無法識別。當我嘗試運行sqlreset(或下降表或變造數據的任何其它命令),我得到一個「未知的命令」錯誤:Django:manage.py標準命令不起作用

runnerw.exe C:\Python27\python.exe "C:\Program Files (x86)\JetBrains\PyCharm 2.5.1\helpers\pycharm\django_manage.py" sqlreset EventMapperApp C:/Users/Karen/PycharmProjects/eventsMap 
Unknown command: 'sqlreset' 
Type 'manage.py help' for usage. 

Process finished with exit code 1 

誰能幫我弄清楚是怎麼回事?

回答

0

沒有sqlreset

資訊:https://docs.djangoproject.com/en/dev/ref/django-admin/

manage.py help爲您的文章顯示...

+0

我能想到的最好的是'sqlsequencereset'和'sqlclear' –

+0

哦!那麼,這會很有意義,不是嗎!我想PyCharm的界面需要更新。 – stank345

+0

但Django 1.4中有一個sqlreset。它已被刪除在開發中。 –

0

Django的管理命令不會自動運行可能會破壞數據庫的命令(諸如更改表格或更改列類型的命令)。

如果您想完全重置您的應用程序 - 就像您剛剛運行syncdb一樣,則需要手動完成。

我寫了這個gist這將重置您的數據庫。它不可移植(只適用於* inx類系統),但它可能會幫助你。

注意:這將刪除(刪除)所有內容。

echo 'from django.conf import settings; print settings.INSTALLED_APPS; quit();' | \ 
python manage.py shell --plain 2>&1 | \ 
tail -n1 | sed -r "s|^.*\((.*)\).*$|\1|; s|[',]| |g; s|django\.contrib\.||g" | \ 
xargs python manage.py sqlclear | \ 
python manage.py dbshell && python manage.py syncdb 
+0

另請參閱管理命令'flush'和'sqlflush'。 –