Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/345.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 为什么这个Django模型方法没有添加到模型类中?_Python_Django_Django Models - Fatal编程技术网

Python 为什么这个Django模型方法没有添加到模型类中?

Python 为什么这个Django模型方法没有添加到模型类中?,python,django,django-models,Python,Django,Django Models,我有一个名为Component的简单模型,可以链接多个配置文件(IngreditProfile类的实例) class Ingredient(models.Model): name = models.CharField(max_length=255, verbose_name=u'ingrediente') def get_default_profile(self): try: return self.profiles.get(defau

我有一个名为Component的简单模型,可以链接多个配置文件(IngreditProfile类的实例)

class Ingredient(models.Model):

    name = models.CharField(max_length=255, verbose_name=u'ingrediente')

    def get_default_profile(self):
        try:
            return self.profiles.get(default=True).name
        except:
            return 'N/A'


class IngredientProfile(models.Model):

    class Meta:
        unique_together = ('ingredient', 'default')

    ingredient = models.ForeignKey(Ingredient, related_name='profiles', verbose_name=u'ingrediente')
    name = models.CharField(max_length=255, blank=True, verbose_name=u'profilo')
    default = models.BooleanField(default=False, verbose_name=u'predefinito')
成分模型在运行时没有显示get\u default\u profile方法有什么原因吗

如果对模型实例调用该方法,则会出现以下错误:

AttributeError: 'Ingredient' object has no attribute 'get_default_profile'

Woodoo?

您可以显示定义函数的代码,这很好。您是否也可以显示尝试使用该函数的代码,以及完整的回溯?谢谢。你是用它来上课吗?例如,
component.get_default_profile()
@jpic我从一个模板开始调试,该模板不显示标准{{component.get_default_profile}的返回值,然后使用Django shell进行检查,导入成分模型,创建实例,并查看导入的方法和属性。dir(component)和dir(i)一样,我是component的实例,不显示方法。@RickyA不,我在实例上使用它,类也不显示方法。请尝试删除你的.pyc文件。也许还用旧的。