Django 表未在PostrgreSQL数据库中删除

Django 表未在PostrgreSQL数据库中删除,django,postgresql,heroku,Django,Postgresql,Heroku,我想在我的Postgres数据库中的Heroku上放一个表。但我还没有想到南方,所以我决定写一个函数: def dropTable(request): cursor = connection.cursor() cursor.execute("DROP TABLE books_request CASCADE;") success = simplejson.dumps({"success":"success",}) return HttpResponse(succes

我想在我的Postgres数据库中的Heroku上放一个表。但我还没有想到南方,所以我决定写一个函数:

def dropTable(request):
    cursor = connection.cursor()
    cursor.execute("DROP TABLE books_request CASCADE;")
    success = simplejson.dumps({"success":"success",})
    return HttpResponse(success, mimetype="application/json")
因此,现在我的
books\u请求表已被删除

然后我在Heroku上为我的应用程序进行了bash,我做了
python manage.py syncdb
希望它能重新创建表,但它似乎没有。为什么?

有没有办法强制同步那个应用程序

我还收到此错误消息,这可能是执行同步时出现问题的一部分:

Problem installing fixture '/app/bookstore/fixtures/initial_data.json': Traceback (most recent call last):
DatabaseError: Could not load sites.Site(pk=1): value too long for type character varying(50)
更新:


我认为问题在于表并没有从一开始就被删除,因为当我转储数据时,我仍然可以看到表。为什么不能正确地删除表?

如果使用的是south,则可能需要运行migrate命令。此外,如果它认为迁移已经应用,则不会重新运行它。尝试运行以下命令,然后添加输出:

heroku run python manage.py migrate

是的,你可能没有摔桌子,你只是觉得你摔了

确保首先通过以下方法正确引用连接:

from django db import connection

使用django调试工具栏查看执行的sql以及发生的情况。或者在heroku shell上使用类似pudb的调试程序来查看发生了什么。

我不使用South,因为我不知道如何使用它。。。既然我把桌子放下了,现在还能用它吗?