2

我想问一下如何使用python中的MVC实现在web2py中创建一个非数据库应用程序。

我正在写一篇关于创建/构建 id3 决策树的论文,我决定让它基于网络。web2py 中的大多数示例都使用数据库。我的论文只需要一个包含我的数据集的上传文件。上传后会自动转化为决策树。

我知道这很令人困惑,但我很感激,如果有人可以帮助我。

4

1 回答 1

1

您无需使用数据库即可使用 web2py。您只需要编写适当的代码来上传和处理您的文件,这将取决于您的应用程序的详细信息。这是一个简单的例子:

def id3_tree():
    form = FORM(INPUT(_name='Data', _type='file'),
        INPUT(_type='submit', _value='Submit'))
    if request.vars.Data:
        tree = create_tree(request.vars.Data.file)
    else:
        tree = 'No tree yet'
    return dict(form=form, tree=tree)

这将创建一个用于上传数据文件的表单。上传文件后,代码会调用一个create_tree()函数并将文件对象传递给它(request.vars.Data.file 将是一个包含文件内容的 cStringIO.StringO 对象——参见http://docs.python.org/库/stringio.html)。

请注意,此方法实际上并不保存文件。作为替代方案,您可以保存文件,然后打开保存的文件以进行处理。在这种情况下,您可以使用SQLFORM.factory()并利用 web2py 的内置文件上传功能。

如果您在进行过程中遇到任何问题,请随时在Google Group上提问。

于 2012-05-22T15:17:43.190 回答