当我尝试创建新用户时,我得到:no such table: tastypie_apikey
。有谁知道为什么会这样? tastypie文档没有引用任何需要创建的数据库表,或者确实是一种让tastypie进行任何此类更改的方法。
答案 0 :(得分:6)
好的,我有一个类似的问题,但@manji给出的解决方案并没有解决。
问题与Django和create_api_key
信号的使用有关。在tastypie能够创建其表之前,syncdb
将首先创建用户。
对我有用的解决方案是:
使用try/except
语句将信号包裹在模型中:
try:
models.signals.post_save.connect(create_api_key, sender=User)
except Exception, e:
pass
运行./manage.py syncdb --migrate
./manage.py backfill_api_keys
以下是GitHub上的问题供您参考:https://github.com/toastdriven/django-tastypie/issues/195
答案 1 :(得分:5)
确保您将tastypie
添加到INSTALLED_APPS
并启动manage.py syncdb
以在数据库中创建tastypie表(有2个:tastypie_apiaccess
& tastypie_apikey
)