AppEngine 上 myapp/static 中文件的路径是什么

发布于 2024-11-27 23:46:04 字数 327 浏览 3 评论 0原文

当项目在 Google appengine 上启动时(我使用的是 django-nonrel),我想将基于 .csv 文件(称为 info.csv)信息的对象添加到我的模型中。
我的做法是在myapp中写一个专门的util.py,在view.py中调用。 util.py 应该读取 info.csv 并启动数据库中的对象。

但是,它给出了“没有这样的文件或目录:...”错误。将文件放入 myapp/static 文件夹 会导致其他问题。

我该怎么办?有没有更聪明的方法来解决这个问题?非常感谢!

I want to add objects based on information of a .csv file (call it info.csv) to my models when the project is initiated on Google appengine (I'm using django-nonrel).
My approach is to write a dedicated util.py in myapp, which is called in view.py. util.py is supposed to read info.csv and initiate objects in the databse.

However, it gives "No such file or directory: ..." error. Putting the file in myapp/static folder causes other problem.

How do I go about this? Is there more clever way to tackle this problem? Thanks so much!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

流星番茄 2024-12-04 23:46:04

为了提高效率,App Engine 单独存储和提供静态文件
来自应用程序文件。 静态文件在
应用程序的文件系统
。如果您有需要读取的数据文件
根据应用程序代码,数据文件必须是应用程序文件,并且
不得与静态文件模式匹配。

请参考此处

要访问您的文件,请将其保存在脚本的同一目录并通过如下方式访问它:

file_path = os.path.join(os.path.dirname(__file__), 'info.csv')
your_file = open(file_path)

For efficiency, App Engine stores and serves static files separately
from application files. Static files are not available in the
application's file system
. If you have data files that need to be read
by the application code, the data files must be application files, and
must not be matched by a static file pattern.

Reference here

To access your file, save it in the same directory of your script and access it through something like this:

file_path = os.path.join(os.path.dirname(__file__), 'info.csv')
your_file = open(file_path)
落花浅忆 2024-12-04 23:46:04

我也看到并使用了这种设计模式:

在config.py中:

INFO: [a,b,c] #or whatever would otherwise go in info.csv

在views.py中:

import config

your_data = config.INFO

I have also seen and used this design pattern:

in config.py:

INFO: [a,b,c] #or whatever would otherwise go in info.csv

in views.py:

import config

your_data = config.INFO
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文