﻿id	summary	reporter	owner	description	type	status	component	version	severity	resolution	keywords	cc	stage	has_patch	needs_docs	needs_tests	needs_better_patch	easy	ui_ux
22319	ValueError: Related model cannot be resolved	efrinut@…	nobody	"Hey!

When I try to migrate comments model I get an error:

{{{
    raise ValueError('Related model %r cannot be resolved' % self.rel.to)
ValueError: Related model 'links.Link' cannot be resolved
}}}

It only happens for this model so when I remove Link fk everything passes smoothly


{{{
DJANGO_APPS = (
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.sites',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'django.contrib.admin',
    'django.contrib.admindocs',
    'django.contrib.webdesign',
    'django.contrib.humanize',
    'django.contrib.sitemaps',
    'django.contrib.flatpages',
)

EXTERNAL_APPS = (
    'haystack',
    'storages',
    'pipeline',
    'endless_pagination',
    'easy_thumbnails',
    'mptt',
    'rest_framework',
    'crispy_forms',
    'crispy_forms_foundation',
    'taggit',
)

SITE_APPS = (
    'accounts',
    'links',
    'core',
    'images',
    'comments',
)

INSTALLED_APPS = DJANGO_APPS + EXTERNAL_APPS + SITE_APPS

}}}

{{{
# -*- coding: utf-8 -*-
from django.db import models
from django.core.urlresolvers import reverse
from django.conf import settings
from links.models import Link


class Comment(models.Model):
    link = models.ForeignKey(Link, null=True, blank=True)
    user = models.ForeignKey(settings.AUTH_USER_MODEL, null=True, blank=False)
    description = models.TextField(null=True, blank=False)
    parent = models.ForeignKey(""self"", null=True, blank=True)

    date_added = models.DateTimeField(auto_now_add=True, null=True)
    date_updated = models.DateTimeField(auto_now=True, null=True)

    class Meta:
        verbose_name = u""Comment""
        verbose_name_plural = u""Comments""

    def get_absolute_url(self):
        return reverse(""comment:detail"", kwargs={'pk': self.pk})


}}}



{{{
# -*- coding: utf-8 -*-
from urlparse import urlparse
from django.core.urlresolvers import reverse
from django.db import models
from taggit.managers import TaggableManager
from .managers import ActiveManager
from django.conf import settings


class Link(models.Model):
    class Meta:
        verbose_name = u""Link""
        verbose_name_plural = u""Links""

    CONTENT = 1
    IMAGE = 2
    VIDEO = 3

    LINK_TYPES = (
        (CONTENT, u""content""),
        (IMAGE, u""image""),
        (VIDEO, u""video""),
    )

    title = models.CharField(max_length=255, null=True, blank=True)
    description = models.TextField(max_length=1000, null=True, blank=False)
    user = models.ForeignKey(settings.AUTH_USER_MODEL, null=True, blank=False)
    url = models.URLField(null=True, blank=False)
    domain = models.URLField(null=True, blank=False)
    date_added = models.DateTimeField(auto_now_add=True, null=True)
    date_updated = models.DateTimeField(auto_now=True, null=True)

    link_type = models.PositiveIntegerField(choices=LINK_TYPES, null=True, blank=False)
    classified = models.BooleanField(default=False)
    published = models.BooleanField(default=True)

    objects = models.Manager()
    active = ActiveManager()

    # tags = TaggableManager()

    def __unicode__(self):
        return u""{}"".format(self.id)

    def get_domain(self):
        return u""{}"".format(urlparse(self.url).netloc)

    def get_domain_url(self):
        url = urlparse(self.url)
        return u""{}://{}"".format(url.scheme, url.netloc)

    def get_absolute_url(self):
        return reverse(""link:detail"", kwargs={'pk': self.pk})

    def get_vote_count(self):
        return 0

    def get_comment_count(self):
        return 0

}}}
"	Bug	closed	Migrations	dev	Release blocker	fixed		loic@… TonyEight	Unreviewed	1	0	0	0	0	0
