2010-12-19 30 views
2

所以我有一些纯文本文件,我想打开并操作,然后返回一些将在视图中使用的输出。我有我的MySQL数据库中存储的文件的名称(我会将文本存储在那里,但是这个文本的长度会发生很大的变化,导致数据库存储效率低下),但是我应该在哪里放置这些文件,以及应该使用什么路径,确保服务器在我拨打File.open()时得到它们的保留?使用文本文件来构建页面(Rails 2.3)

而且我也希望拥有它,以便用户无法访问原始文本文件(如果可能的话)。

所有帮助表示感谢和感谢!

回答

1

Mladen是对的。你公共目录外的任何地方都可以。说你把它们放在app/textfiles。然后—给您的文本文件模式被称为“TxtFile”和TxtFile#path => "my_file.txt"

 
class TxtFile 
    # ... 
    def contents 
    @contents ||= File.open("#{Rails.root}/app/textfiles/#{path}").read 
    end 
end 
+0

我没有测试过这一点,但它应该工作:) – mikker 2010-12-19 10:17:53

4

public目录之外的任何地方(用户可以阅读),您的Web服务器具有读取权限。

相关问题