我的网络上有一个 samba 服务器,其中包含许多目录,其中一个目录充满了 .xls Microsoft Excel 文档。
我想要实现的基本上是远程目录中的文件列表,然后我可以将其混搭成一个包含远程 IP 的链接。最终结果基本上是目录中文件的实时表,用户可以单击它来打开他们需要的文件。
我已经阅读了以下做类似事情的方法:
basedir = '.'
files = Dir.glob("*.xls")
我正在努力解决的是如何使 basedir 成为远程 IP,以及如何将其构建到我的模型/控制器中。
理想情况下,我想做这样的事情:
文件控制器.rb
class FilesController < ApplicationController
basedir = '192.168.1.1/files/path/to/xlsdocuments/'
def index
@xls_files = Dir.glob("*.xls")
respond_to do |format|
format.html # index.html.erb
format.json { render json: @articles }
end
end
然后,这将允许我在我的视图中遍历 @xls_files。
这甚至有可能吗?
更新
在我的控制器中使用上面的代码如下,我没有收到任何错误,但我不知道如何显示文件名:
class DocumentsController < ApplicationController
before_filter :authorize, only: [:new, :edit, :update]
basedir = '192.168.1.1/common/'
# GET /documents
# GET /documents.json
def index
@documents = Document.all
@xls_files = Dir.glob("*.xls")
@xls_files = @xls_files.split('\n')
respond_to do |format|
format.html # index.html.erb
format.json { render json: @documents }
end
end
我在我的视图中使用以下内容遍历文件名:
<% @xls_files.each do |xls| %>
file name
<% end %>
这输出file name
. 知道如何输出实际文件名吗?