当前位置: 首页 > 面试题库 >

在Django 1.9中我应该使用什么来代替syncdb?

左仰岳
2023-03-14
问题内容

看看这个:

$ pypy ./manage.py syncdb
/usr/lib64/pypy-2.4.0/site-packages/django/core/management/commands/syncdb.py:24: RemovedInDjango19Warning: The syncdb command will be removed in Django 1.9
  warnings.warn("The syncdb command will be removed in Django 1.9", RemovedInDjango19Warning)

(cut)

问题答案:

syncdb由于django 1.7引入的迁移系统而被弃用。

现在,你可以使用跟踪更改makemigrations。这会将你的模型更改转换为python代码,以使其可部署到另一个数据库。当你需要对数据库进行进一步的修改时,可以使用数据迁移。

创建迁移后,你必须应用它们:migrate

因此,除了使用之外,syncdb你还应该使用makemigrations然后migrate

更改模型中的某些内容后,开发工作流程如下:

./manage.py makemigrations
./manage.py migrate

在你的生产系统上:

./manage.py migrate

奖励:你无需migrate为每次更改都运行。如果你尚未应用多个更改,django将按照正确的顺序运行它们。



 类似资料:
  • 问题内容: 看看这个: 我运行了一个快速的Google搜索,但找不到答案- 我应该用什么代替? 问题答案: 由于django 1.7 引入的迁移系统而被弃用。 现在,您可以使用 跟踪 更改。这会将您的模型更改转换为python代码,以使其可部署到另一个数据库。当您需要对数据库进行进一步的修改时,可以使用数据迁移。 创建迁移后,您必须 应用 它们:。 因此,除了使用之外,您还应该使用然后。 更改模型

  • 本文向大家介绍为什么在Bash中应该避免eval,我应该用什么来代替呢?,包括了为什么在Bash中应该避免eval,我应该用什么来代替呢?的使用技巧和注意事项,需要的朋友参考一下 eval是Bash shell的内置命令,它将其参数连接为单个字符串。然后,它将参数与空格连接起来,然后将该字符串作为bash命令执行。以下是其工作方式的示例。 eval示例 在下面的示例中,我们使用一个字符串,该字符串

  • 这个方法有什么用? 我可以用另一种方法替换它以获得相同的结果吗?

  • 问题内容: 一次又一次,我看到Bash在Stack Overflow上使用了答案,而答案被猛烈抨击了,旨在使用这种“邪恶的”构造。为什么这么邪恶? 如果不能安全使用,我应该怎么用呢? 问题答案: 这个问题比眼前的问题还重要。我们将从显而易见的内容开始:具有执行“脏”数据的潜力。脏数据是指尚未重写为XYZ的任何数据;在我们的例子中,它是未格式化的任何字符串,以确保评估安全。 乍看之下,对数据进行消毒

  • Java9问世了,已经被废弃。为什么会这样?这是否意味着我们不应该再实现观察者模式了? 知道什么是更好的替代方案会很好?

  • 问题内容: 代替在所有地方使用是否合法?为什么从Python 3中删除?似乎是一种了不起的,有用的方法。它背后的原因是什么? 编辑: 为澄清起见,我想知道以类似于生成器的方式(一次将一项,而不是全部都存储到内存中)以与Python 2和Python 3兼容的方式遍历字典的正确习惯是什么。 ? 问题答案: 在Python 2.x中-返回(键,值)对的列表。在Python 3.x中,现在是一个对象,其