无法在web2py中打开csv文件

问题描述:

我正在处理web2py中的项目,我需要将csv文件上传到数据库,然后获取该文件中的信息并使用它进行操作。我可以上传一个csv文件,在数据库中,我可以点击这个文件,打开它,然后物理读取它,但是当我尝试在控制器中打开并阅读它时,它不起作用。无法在web2py中打开csv文件

在我的控制器导致该错误的代码如下所示:

csvfile = open(form.vars.csv, 'r') 

错误是“FileNotFoundError:[错误2]没有这样的文件或目录:“datab.csv.aae72db13bc450af.637376746573742e637376.csv ' “

为什么这不起作用?

表单处理完成后,数据库中的上传字段(因此form.vars.csv)只存储文件名,而不是完整的文件路径。而不是手动构建完整的文件路径,并呼吁open,更简单地说,你可以这样做:

filename, csvfile = db.mytable.csv.retrieve(form.vars.csv) 

当传递一个文件名,文件上传域对象的.retrieve方法返回原始(未转换),文件名以及作为打开的文件对象。

请参阅http://web2py.com/books/default/chapter/29/06/the-database-abstraction-layer#More-on-uploads