32

我想创建一个名为“database1.sqlite”的数据库的表,所以我运行命令:

python manage.py syncdb

但是当我执行命令时,我收到以下错误:

未知命令:“syncdb”键入“manage.py help”以了解用法。

但是当我跑步时

manage.py 帮助

我没有看到任何可疑的命令可以替代

python manage.py syncdb

我使用的 Python 版本:3.4.2 我使用的 Django 版本:1.9

如果有人可以帮助我解决这个问题,我将不胜感激。

提前致谢

4

10 回答 10

57

如果您查看 的发行说明django 1.9syncdb则会删除命令。

migrate改用。展望未来,迁移命令将如此处所述

请注意,截至今天,django-1.9 版本还不稳定。

编辑:Django 1.9 现在稳定了

于 2015-02-24T00:16:05.207 回答
8

新的 django 1.9 删除了“syncdb”,运行“python manage.py migrate”,如果你想创建一个超级用户,运行“python manage.py createsuperuser”

于 2016-01-26T17:58:38.643 回答
7

$python manage.py syncdb已弃用,现在不支持。因此,请按照以下说明代替此操作..

无论您创建了什么模型: 第一次运行:

$python manage.py makemigrations

运行此命令后,您的模型将反映在迁移中。

然后你必须运行:

$python manage.py migrate

然后运行服务器:

$python manage.py runserver

现在,您的项目将完美运行。

于 2017-12-06T12:20:40.800 回答
2

在 Django 1.9 及以后的版本syncdb中,命令被删除。因此,您可以使用命令而不是使用那个migrate,例如: 。然后您可以通过命令python manage.py migrate运行您的服务器。python manage.py runserver

于 2017-03-14T20:11:54.480 回答
1

Django 已删除python manage.py syncdb命令,现在您可以简单地使用python manage.py makemigrations后跟python manage.py migrate. 数据库将自动同步。

于 2017-03-09T06:25:24.210 回答
0

我有同样的问题,唯一对我有用的是这个命令。

python3 manage.py migrate --run-syncdb

运行这个让我得到了这个结果。

Ranvijays-Mac:djangodemo rana.singh$ python3 manage.py migrate --run-syncdb
Operations to perform:
  Synchronize unmigrated apps: messages, staticfiles
  Apply all migrations: admin, auth, contenttypes, msg, sessions
Synchronizing apps without migrations:
  Creating tables...
    Running deferred SQL...
Running migrations:
  Applying msg.0001_initial... OK
于 2020-05-02T14:34:43.057 回答
0

运行命令 python manage.py makemigratons,然后 python manage.py migrate 同步。

于 2016-03-15T06:50:41.147 回答
0

替代方式:

  1. 从环境中卸载 Django 模块
  2. 编辑 Requirements.txt 类型 Django<1.9
  3. 在环境中运行从需求选项安装
  4. 再次尝试 Syncdb

这对我有用。

于 2017-04-20T17:04:32.153 回答
0

我也试过这个命令。最后我找到了 django 的发行说明

1.9 中删除的功能

删除了 syncdb 命令。

Djnago 发布说明 1.9

在此处输入图像描述

于 2019-11-08T11:41:00.333 回答
0

您可以从项目文件夹运行命令:“ python.exe manage.py migrate”,从命令行或批处理文件。如果你真的需要 syncdb,你也可以将 Django 降级到旧版本(1.9 之前)。

对于尝试从 Visual Studio 2015 运行 Syncdb 的人:选项 syncdb 已从 Django 1.9 中删除(已从 1.7 弃用),但此选项当前未在 VS2015 的上下文菜单中更新。

此外,如果您没有被要求创建超级用户,您应该手动运行此命令来创建一个:python.exe manage.py createsuperuser

于 2016-01-15T15:27:43.053 回答