Python 找不到类函数

Python 找不到类函数,python,django,pinax,Python,Django,Pinax,我在从pinax转介包创建转介时遇到问题。当我尝试在内部视图中创建引用时,引用类具有类函数create(…),如: from pinax.referrals.models import Referral def createReferral(user): referral = Referral.create( user = user, redirect_to = "/" ) 它向我抛出以下错误: 类型对象“引用”没有属性“创建” Pinax型

我在从pinax转介包创建转介时遇到问题。当我尝试在内部视图中创建引用时,引用类具有类函数create(…),如:

from pinax.referrals.models import Referral

def createReferral(user):

    referral = Referral.create(
        user = user,
        redirect_to = "/"
    )
它向我抛出以下错误:

类型对象“引用”没有属性“创建”

Pinax型号内的代码看起来正常:

@classmethod
def create(cls, redirect_to, user=None, label="", target=None):
    if target:
        obj, _ = cls.objects.get_or_create(
            user=user,
            redirect_to=redirect_to,
            label=label,
            target_content_type=ContentType.objects.get_for_model(target),
            target_object_id=target.pk
        )
    else:
        obj, _ = cls.objects.get_or_create(
            user=user,
            label=label,
            redirect_to=redirect_to,
        )

    return obj

据我所知,问题与Pinax软件包本身无关,看起来非常奇怪。有人有什么想法吗?

听起来你在同一个模块中定义了另一个类
参考
,它取代了Pinax的
参考
模型

这可能是因为您定义了一个类

class Referral(View):
    ...
或者您已经导入了另一个类
引用
。如果您执行
*
导入,可能不会明显发生这种情况

from mymodule import *

调试的一个有用工具是将
打印(引用)
添加到视图中。然后,您将看到
参考
类是否是您期望的类。

您可以显示您的导入吗?我刚刚编辑了这个问题。。从pinax.referrals.models导入Referral,ReferralResponse导入和
createReferral
方法也可以,您发布的方法看起来不错。模块中是否有其他内容可能覆盖了
参考
?您是否定义了另一个类
参考
。您是否正在模块中执行来自x导入*的
操作?我想您可能正在执行来自导入*
操作,这可能会将您的
参考
类替换为另一个类。在
createReferral
方法的开头添加
print(reference)
显示了什么?@Alasdair我找到了问题的原因。在我的视图中,我用引用名称声明了一个基于类的视图。非常感谢你!你的想法与打印视图内帮助了很多!