标签: django-syncdb

运行Django的./manage.py syncdb时自动创建管理员用户

我的项目处于早期开发阶段.我经常删除数据库并运行manage.py syncdb以从头开始设置我的应用程序.

不幸的是,这总是突然出现:

You just installed Django's auth system, which means you don't have any superusers defined.
Would you like to create one now? (yes/no): 
Run Code Online (Sandbox Code Playgroud)

然后,您提供了用户名,有效的电子邮件地址和密码.这很乏味.我厌倦了打字test\nx@x.com\ntest\ntest\n.

如何在运行时自动跳过此步骤并以编程方式创建用户manage.py syncdb

django automation django-syncdb

81
推荐指数
7
解决办法
3万
查看次数

我可以在Django中使用数据库视图作为模型吗?

我想使用我在我的数据库中创建的视图作为我的django-view的源代码.

这可能,而不使用自定义SQL?

******13/02/09更新***********

像许多答案建议的那样,您可以在数据库中创建自己的视图,然后通过在models.py中定义它在API中使用它.

虽然有些警告:

  • manage.py syncdb将不再起作用
  • 视图在其名称的开头需要与所有其他模型(表格)相同的内容,例如,如果您的应用程序被称为"事物",那么您的视图将需要被称为thing_ $ viewname

django django-syncdb django-migrations

61
推荐指数
3
解决办法
3万
查看次数

Django manage.py未知命令:'syncdb'

我正在尝试按照本教程,但我坚持第5步.

当我执行

[〜/ Django Projects/netmag $] python manage.py syncdb

我收到以下错误消息:

Unknown command: 'syncdb'
Type 'manage.py help' for usage.
Run Code Online (Sandbox Code Playgroud)

这里是./manage.py help不包含syncdb命令的输出.我该如何添加?

谢谢你的帮助!

编辑:

当我运行迁移时,我收到此错误:

"创建新内容类型时出错.请确保contenttypes"RuntimeError:创建新内容类型时出错.在尝试单独迁移应用之前,请确保迁移了contenttypes.

在settings.py中:

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'django.contrib.admindocs',
    'blog',
]
Run Code Online (Sandbox Code Playgroud)

编辑2:

如果我'blog',从settings.py中删除:

:~/Django Projects/netmag$ python manage.py migrate blog
CommandError: App 'blog' does not have migrations. 

:~/Django Projects/netmag$ python manage.py makemigrations blog 
App 'blog' could not be found. Is it in INSTALLED_APPS?
Run Code Online (Sandbox Code Playgroud)

python django syncdb django-syncdb

57
推荐指数
4
解决办法
7万
查看次数

在django中,如何从初始化脚本中调用子命令"syncdb"?

我是python和django的新手,在关注Django Book时,我了解了命令'python manage.py syncdb',它为我生成了数据库表.在开发环境中,我在内存数据库中使用sqlite,因此每次重新启动服务器时都会自动删除它.那么我如何编写这个'syncdb'命令的脚本?(这应该在'settings.py'文件中完成吗?)

澄清

OP正在使用内存数据库,需要在使用针对该数据库定义的Django模型的任何进程开始时对其进行初始化.确保数据库初始化的最佳方法是什么(每个进程启动一次).这可以通过manage.py runserver或通过Web服务器进程(例如使用WSGI或mod_python)运行测试或运行服务器.

python django django-syncdb in-memory-database

46
推荐指数
3
解决办法
2万
查看次数

Django 1.8和syncdb/migrate的auth_user错误

升级到Django 1.8(使用zc.buildout)并运行syncdb或migrate时,我收到以下消息:

django.db.utils.ProgrammingError: relation "auth_user" does not exist

我的一个模型包含django.contrib.auth.models.User:

user = models.ForeignKey(
    User, related_name='%(app_label)s_%(class)s_user',
    blank=True, null=True, editable=False
)
Run Code Online (Sandbox Code Playgroud)

降级到Django 1.7可以消除错误.我是否必须在Django 1.8中以不同方式包含User对象?

python django buildout django-syncdb django-1.8

46
推荐指数
6
解决办法
3万
查看次数

Django/Python初学者:执行python manage.py syncdb时出错 - 找不到psycopg2

我使用Macports安装了Pythong2.6,psycopg2和pgAdmin3.我的settings.py是:

DATABASE_ENGINE = 'postgresql_psycopg2'           # 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'.
DATABASE_NAME = 'mysite'             # Or path to database file if using sqlite3.
DATABASE_USER = 'postgres'             # Not used with sqlite3.
DATABASE_PASSWORD = ''         # Not used with sqlite3.
DATABASE_HOST = ''             # Set to empty string for localhost. Not used with sqlite3.
DATABASE_PORT = ''             # Set to empty string for default. Not used with sqlite3.
Run Code Online (Sandbox Code Playgroud)

我运行python manage.py syncdb时得到的错误是:

Traceback (most recent call last):
  File "manage.py", line 11, in …
Run Code Online (Sandbox Code Playgroud)

python django django-syncdb

36
推荐指数
4
解决办法
7万
查看次数

测试使用South迁移的Django应用程序

我正在尝试为使用South迁移的Django应用程序创建一些功能测试.
最后,我还将创建斜纹测试.

当我尝试运行现有测试时,由于South迁移的问题,未成功创建测试数据库.(58次迁移中的第7次失败)

似乎为了测试的目的,最好从Django模型构建测试数据库,就像syncdb一样,而不是来自South.

如何设置Django测试套件以从当前模型构建测试数据库而不是尝试使用South?

django django-testing django-syncdb django-south

29
推荐指数
1
解决办法
5022
查看次数

经常修改模型时的Django工作流程?

因为我通常不在Django项目中进行模型的预先设计,所以我最终修改了模型,因此每次都删除我的测试数据库(因为"syncdb"不会自动为你更改表格).下面是我的工作流程,我想听听你的.欢迎任何想法..

  1. 修改模型.
  2. 删除测试数据库.(对我来说,总是一个简单的sqlite数据库.)
  3. 运行"syncdb".
  4. 通过代码生成一些测试数据.
  5. 转到1.

关于这个的第二个问题..如果您的工作流程如上所述,您如何执行4.步骤?您是手动生成测试数据还是在Django应用程序中有适当的挂钩点,您可以在服务器启动时注入测试数据生成代码?

TIA.

python django workflow django-models django-syncdb

25
推荐指数
4
解决办法
3763
查看次数

如何用django-south恢复掉落的桌子?

我想在我的数据库中清除一个表,所以我放弃了表.通常我会manage.py syncdb重新创建它.但是,这里的答案说不再使用syncdb了.那么,我该怎么做呢?

python database django django-syncdb django-south

20
推荐指数
3
解决办法
7138
查看次数

Django CMS无法同步db或迁移

我是django的新手,反过来是django-cms app.

我一步一步地按照教程:(来自官方网站)在一台新机器上完成了教程所做的一切,但我还是无法到达任何地方.

我进入设置过程的最后一步,一切都结束了,当我跑:

python manage.py syncdb --all
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

CommandError: One or more models did not validate:
cms.page: 'site' has a relation with model <class 'django.contrib.sites.models.Site'>,     which has either not been installed or is abstract.
cms.globalpagepermission: 'sites' has an m2m relation with model <class 'django.contrib.sites.models.Site'>, which has either not been installed or is abstract.
Run Code Online (Sandbox Code Playgroud)

澄清这种情况发生在步骤1.3.2.1.全新安装在教程中

1.3.2.1.全新安装

Run:

python manage.py syncdb --all
python manage.py migrate --fake
Run Code Online (Sandbox Code Playgroud)

这些命令都不起作用,都会导致上述错误.

我不知道如何解决这个问题,甚至找不到导致我的问题的资源,我花了很短的时间在google和stackoverflow上寻找没有结果的答案,我还没有能够指出这个问题可能会让事情变得更难.

任何帮助深表感谢.

我的代码与教程完全相同,这就是为什么我没有发布任何内容.

python django django-syncdb django-cms

20
推荐指数
1
解决办法
4767
查看次数