我可以通过直接网址(localhost:8000/static/maps/foo.txt
)访问相关的静态文件,所以我想我一切都运行良好。但我无法执行以下操作:我想在views.py中打开该文本文件。这是因为我正在开发一个简单的网页浏览器冒险游戏,我想在静态/地图中存储地图,并使用f=open('/static/maps/' + mapname + '.txt', 'r')
加载这些地图。我得到了IOError: no such file or directory
。我真的不明白,因为当我在地址中搜索时,是这样的目录。
能以某种方式完成吗?
答案 0 :(得分:0)
您需要使用它们存储在磁盘上的位置,该位置可能位于settings.STATIC_ROOT
或settings.STATICFILES_DIRS
,而不是Web应用程序所在的位置。
但请注意,如果以编程方式修改这些文件,则它们(根据定义)不是静态文件。您最好使用MEDIA_ROOT
位置。另请注意,Django有助手来执行此类操作 - 请参阅Managing files上的文档。