我正在尝试使用Django non-rel让Django在Google App Engine上运行。我跟随Django 1.5 tutorial然而,当我跑:
python manage.py sql polls
什么都没有。 任何人都可以建议为什么'manage.py sql'默默地失败了?
当我同步数据库时,我得到:
$ python manage.py syncdb
Creating tables ...
Installing custom SQL ...
Installing indexes ...
Installed 0 object(s) from 0 fixture(s)
数据库在settings.py中指定如下:
# Activate django-dbindexer for the default database
DATABASES['default'] = {'ENGINE': 'dbindexer', 'TARGET': DATABASES['default']}
AUTOLOAD_SITECONF = 'indexes'
我记得在settings.py
中包含'民意调查'INSTALLED_APPS = (
# 'django.contrib.admin',
'django.contrib.contenttypes',
'django.contrib.auth',
'django.contrib.sessions',
'djangotoolbox',
'autoload',
'dbindexer',
'polls',
# djangoappengine should come last, so it can override a few manage.py commands
'djangoappengine',
)
并且模型出现在polls / models.py
中from django.db import models
class Poll(models.Model):
question = models.CharField(max_length=200)
pub_date = models.DateTimeField('date published')
class Choice(models.Model):
poll = models.ForeignKey(Poll)
choice_text = models.CharField(max_length=200)
votes = models.IntegerField(default=0)
注意:如果我将settings.py更改为使用本地sqlite3数据库,则'manage.py sql polls'的行为与教程中所述相同。因此,据我所知,这与以下无关:
答案 0 :(得分:1)
为什么你期望它做什么? GAE具体是非关系型(NoSQL)数据存储区。完全没有SQL可以生成。
你应该知道GAE,即使使用django-non-rel,也与标准的Django完全不同,遵循Django教程只会让你感到困惑。