我尝试在这样的视图中读取文件:
def foo(request):
f = open('foo.txt', 'r')
data = f.read()
return HttpResponse(data)
我试图将foo.txt放在项目的几乎每个文件夹中,但它仍然会返回
[Errno 2]没有这样的文件或目录: 'foo.txt的'
那么有人知道如何在app引擎补丁中打开文件吗?我应该在哪里放置我想要打开的文件?非常感谢。 我正在使用app-engine-patch 1.1beta1
答案 0 :(得分:2)
在App Engine,补丁或其他方面,您应该能够打开(只读)随应用程序源上传的任何文件。 'foo.txt'与py文件位于同一目录中吗?它是否上传(你的app.yaml说什么?)?
答案 1 :(得分:1)
将'./'放在文件路径前:
f = open('./foo.txt')
如果不这样做,它仍然可以在App Engine Launcher 1.3.4中运行,这可能会令人困惑,但是一旦你上传它,你就会收到错误。
此外,您似乎不应该提及要在app.yaml中访问的文件(或其目录)。我在这个应用程序中包含了css,js和html。
答案 2 :(得分:0)
你应该尝试f = open('。/ foo.txt','r')