gpt4 book ai didi

python - 找不到类函数

转载 作者:行者123 更新时间:2023-11-28 18:33:45 24 4
gpt4 key购买 nike

我在从 pinax-referrals 包创建推荐时遇到问题。推荐类具有类函数 create(...) 当我尝试在 View 内部创建推荐时,例如:

from pinax.referrals.models import Referral

def createReferral(user):

referral = Referral.create(
user = user,
redirect_to = "/"
)

它抛出以下错误:

type object 'Referral' has no attribute 'create'

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 包本身无关,看起来很奇怪。有人有什么想法吗?

最佳答案

听起来您在同一个模块中定义了另一个类 Referral,它取代了 Pinax 的 Referral 模型。

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

class Referral(View):
...

或者您可能导入了另一个类 Referral。如果您执行 * 导入,这可能并不明显。

from mymodule import *

一个有用的调试工具是将 print(Referral) 添加到您的 View 中。然后您将看到 Referral 类是否是您期望的类。

关于python - 找不到类函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34397395/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com