gpt4 book ai didi

python - 导入模型/库类并从 Controller 调用

转载 作者:行者123 更新时间:2023-12-01 06:19:33 25 4
gpt4 key购买 nike

尽管我在 PHP 方面经验丰富,但我对 python 和 pylons 还是新手。

我正在尝试编写一个模型类,它将充当对我的数据库(couchdb)的数据访问。我的问题很简单

我的模型如下所示,名为 models/BlogModel.py

from couchdb import *

class BlogModel:

def getTitles(self):
# code to get titles here

def saveTitle(self):
# code to save title here

我的 Controller 名为controllers/main.py

import logging

from pylons import request, response, session, tmpl_context as c
from pylons.controllers.util import abort, redirect_to

from billion.lib.base import BaseController, render

log = logging.getLogger(__name__)

from billion.model import BlogModel

class MainController(BaseController):

def index(self):
return render('/main.mako')

在我的索引操作中,如何访问 BlogModel 中的 getTitles() 方法?

我已经尝试过

x = BlogModel()
x.getTitles()

但是我明白了 类型错误:“模块”对象不可调用

还有 BlogModel.getTitles() 结果 AttributeError:“模块”对象没有属性“getTitles”

这与我包含类(class)的方式有关吗?有人可以告诉我最好的方法吗?

谢谢

最佳答案

x = BlogModel.BlogModel()

或者,更详细地说:

完成导入后,您的命名空间中就会有一个名为“BlogModel”的对象。该对象是 BlogModel 模块。 (模块名称来自文件名。)在该模块内部,有一个名为“BlogModel”的类对象,这就是您所追求的。 (类名来自您编写的源代码。)

而不是:

from billion.model import BlogModel

您可以使用:

from billion.model.BlogModel import BlogModel

那么你的

x = BlogModel()

可以。

关于python - 导入模型/库类并从 Controller 调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1268432/

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