我正在使用表单将文件上传到Google应用引擎并将其存储在数据存储区中。我还希望存储原始文件名和扩展名以供演示。
是否有从后服务器端检索此数据的方法,或者只能在客户端收集并作为单独的字段发送(例如http://www.tinyurl.com/5jybfq)?
非常感谢。
对于那些遵循以下答案的解决方案:
this_file = self.request.params["file_upload_form_field_name"].filename
(this_file_name, this_file_extension) = os.path.splitext(this_file)
self.response.out.write("File name: " + this_file_name + "<br>")
self.response.out.write("File extension: " + this_file_extension + "<br>")
答案 0 :(得分:3)
this email的代码段是否有效?
self.request.params[<form element name with file>].filename
答案 1 :(得分:0)
试试这个......
如果您的表单如下所示:
self.response.out.write('''<form action="/upload" enctype="multipart/form-data" method="post"><input type="file" name="file"/><input type="submit" /></form>''')
然后在你的帖子处理程序中,试试这个:
class UploadHandler(webapp.RequestHandler):
def post(self):
obj = MyModel()
obj.filename = self.request.get("file")
obj.blob = self.request.get("contents")
obj.put()
self.redirect('/')
文件名存储在“file”参数中。实际文件内容位于“contents”参数中。