我想问一下如何使用python中的MVC实现在web2py中创建一个非数据库应用程序。
我正在写一篇关于创建/构建 id3 决策树的论文,我决定让它基于网络。web2py 中的大多数示例都使用数据库。我的论文只需要一个包含我的数据集的上传文件。上传后会自动转化为决策树。
我知道这很令人困惑,但我很感激,如果有人可以帮助我。
我想问一下如何使用python中的MVC实现在web2py中创建一个非数据库应用程序。
我正在写一篇关于创建/构建 id3 决策树的论文,我决定让它基于网络。web2py 中的大多数示例都使用数据库。我的论文只需要一个包含我的数据集的上传文件。上传后会自动转化为决策树。
我知道这很令人困惑,但我很感激,如果有人可以帮助我。
您无需使用数据库即可使用 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上提问。