2016-04-03 39 views
1

travelers.models无法使用其他应用程序的外键?

from django.db import models 

    class ShortInfoTraveler(models.Model): 

    name = models.CharField(max_length=200, blank=True) 

    email = models.EmailField(blank=True) 

blogs.models

from django.db import models 
from travelers.models import ShortInfoTraveler 

class Title(models.Model): 
    shortinfotraveler = models.ForeignKey('ShortInfoTraveler') 
    title_text = models.CharField(max_length=255) 
    description = models.CharField(max_length=255, null=True, blank=True) 

,当我运行makemigrations,终端展示以下各项

ERRORS: blogs.Title.shortinfotraveler: (fields.E300) Field defines a relation with 
model 'blogs.ShortInfoTraveler', which is either not installed, or is abstract. 

回答

2

你应该设置你的外键像这样:

models.ForeignKey('travelers.ShortInfoTraveler') 

如果您想使用字符串来设置外键关系。

或者您应该只设置ShortInfoTraveler,因为您已经导入它而不是字符串。

将其设置为"ShortInfoTraveler"正在寻找当前模型文件中的模型,而不是其他应用程序,您可以在错误消息输出中看到它。

相关问题