簡體   English   中英

相當於Django 1.9中的sqlall?

[英]Equivalent of sqlall in Django 1.9?

我正在使用Django 1.9,我正在嘗試獲取用於從models.py創建數據庫表的SQL。

似乎在以前版本的Django中可以做到:

python manage.py sqlall <app_name>

但似乎不再是這種情況。 我剛收到Unknown command: 'sqlall' 文檔中沒有任何內容似乎提供此功能。

如何查看我的模型如何轉換為SQL?

在Django 1.9中不推薦使用它:

將刪除沒有遷移的應用程序的SQL管理命令,sql,sqlall,sqlclear,sqldropindexes和sqlindexes。

您可以使用的最近的命令是sqlmigrate

打印指定遷移的SQL。 這需要一個活動的數據庫連接,它將用於解析約束名稱; 這意味着您必須針對您希望稍后應用它的數據庫副本生成SQL。

您可以使用遷移名稱0001_initial作為創建腳本,例如:

python manage.py sqlmigrate myapp 0001_initial

我發現使用sqlmigrate對我來說是一個非常糟糕的解決方案。 我正在設置邏輯復制,因此我需要數據庫的SQL,而不是單個遷移的SQL。

我找到的解決方案是使用pg_dump--schema-only選項。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM