我正在寻找可以执行以下操作的更新的 Django 1.5 命令。
python manage.py reset <app>
我想做的基本上是DROP
表和UPDATE
内部的数据库结构manage.py command
。
问题是重置命令不再起作用并且
manage.py flush
或者
manage.py sqlclear <app>
只是删除数据库/表内容。
reset
Django 1.5的更新版本是什么?
我正在寻找可以执行以下操作的更新的 Django 1.5 命令。
python manage.py reset <app>
我想做的基本上是DROP
表和UPDATE
内部的数据库结构manage.py command
。
问题是重置命令不再起作用并且
manage.py flush
或者
manage.py sqlclear <app>
只是删除数据库/表内容。
reset
Django 1.5的更新版本是什么?
作为 MySQL 的替代方案,您可以使用以下代码创建一个application.py
next to 。manage.py
这将DROP
,CREATE
和UPDATE
您的数据库与您的models.py
#!/usr/bin/python
import MySQLdb
import subprocess
dbname = "mydbname"
db = MySQLdb.connect(host="127.0.0.1", user="username", passwd="superpassword", db=dbname)
cur = db.cursor()
#Drop all database to Drop all tables
cur.execute("DROP DATABASE "+dbname)
#Recreate the DB
cur.execute("CREATE DATABASE "+dbname)
#Sync with manage.py
proc = subprocess.call(['python','manage.py','syncdb'])
print "\n\nFinished!"
我想你要找的是南方。South 是一个 3rd 方工具,它可能很快会集成到 Django 中,它可以帮助您进行数据库迁移和模式更改。就目前而言,Django 1.5 不能很好地处理模式更改,如果有的话。在 Django 1.5 中调整模式的唯一方法是添加新模型。您不希望参与添加新模型来完成所需的表更改或删除的实践。大多数开发人员在需要进行架构调整时会求助于第三部分解决方案。
见http://south.readthedocs.org/en/latest/about.html
请参阅教程http://south.readthedocs.org/en/latest/tutorial/part1.html#tutorial-part-1
South 与数据库无关,可自动为您处理数据库迁移。因此,如果您更改架构,它将在 models.py 中检测到它并进行适当的更改。您可以将 South 作为应用程序包含到您的 Django 项目中,并通过 pip 安装它
希望这可以帮助