Django管理员在安装tastypie后抛出错误?

时间:2011-06-22 11:53:14

标签: django django-admin tastypie

当我尝试创建新用户时,我得到:no such table: tastypie_apikey。有谁知道为什么会这样? tastypie文档没有引用任何需要创建的数据库表,或者确实是一种让tastypie进行任何此类更改的方法。

2 个答案:

答案 0 :(得分:6)

好的,我有一个类似的问题,但@manji给出的解决方案并没有解决。

问题与Django和create_api_key信号的使用有关。在tastypie能够创建其表之前,syncdb将首先创建用户。

对我有用的解决方案是:

  1. 使用try/except语句将信号包裹在模型中:

    try:
        models.signals.post_save.connect(create_api_key, sender=User)
    except Exception, e:
        pass
    
  2. 运行./manage.py syncdb --migrate

  3. 运行./manage.py backfill_api_keys
  4. 以下是GitHub上的问题供您参考:https://github.com/toastdriven/django-tastypie/issues/195

答案 1 :(得分:5)

确保您将tastypie添加到INSTALLED_APPS并启动manage.py syncdb以在数据库中创建tastypie表(有2个:tastypie_apiaccess& tastypie_apikey