小编Ald*_*lds的帖子

Django外键不起作用

编辑:Django版本1.6.1

尝试通过管理员创建RedditPost对象时,我不断收到此错误:

no such column: subreddit_id
Run Code Online (Sandbox Code Playgroud)

subreddit_id错误引用RedditPost.subreddit(不Subreddit.subreddit),然后添加一个_id末的某些原因.

参考没有问题.尝试从管理员创建RedditPost时,Subreddits的下拉菜单会显示所有可用的Subreddits对象.

class Subreddit(models.Model):
    subreddit     = models.CharField(max_length=100, primary_key=True)
    title         = models.CharField(max_length=100, null=False)

    def __unicode__(self):
        return smart_unicode(self.subreddit)

class RedditPost(models.Model):
    comments_link    = models.CharField(max_length=256, primary_key=True)
    submitted_link   = models.CharField(max_length=256, null=False)
    rank             = models.IntegerField(null=False)
    title            = models.CharField(max_length=100, null=False)
    reddit_timestamp = models.DateTimeField(null=False)
    updated_at       = models.DateTimeField(auto_now_add=True, auto_now=True)
    subreddit        = models.ForeignKey('Subreddit')
Run Code Online (Sandbox Code Playgroud)

已解决/解决方案:我结束使用"刷新",当我进行更改时,我没有清理数据库(我没有使用任何迁移).我不得不使用:

    python manage.py sqlclear "app_name" | python manage.py dbshell
Run Code Online (Sandbox Code Playgroud)

要完全清除数据库,然后我必须按照此链接(Django South错误初始迁移)正确执行迁移.

python django

0
推荐指数
1
解决办法
1336
查看次数

标签 统计

django ×1

python ×1