0
我有一個類似於這樣一個塊:方法添加到迭代對象
<% @github_tmp_files.files.each do |file| %>
<li><%= link_to @github_tmp_files.filename(file.key), @github_tmp_files.download_url(file.key) %></li>
<% end %>
正如你可以在迴路中看到我所說的兩個方法與file
作爲參數:
@github_tmp_files.filename(file.key)
@github_tmp_files.download_url(file.key)
我寧願這樣稱呼這兩種方法:
file.filename (should return) @github_tmp_files.filename(file.key)
file.download_url (should return) @github_tmp_files.download_url(file.key)
因此,最後我可以寫這樣的循環:
<% @github_tmp_files.files.each do |file| %>
<li><%= link_to file.filename, file.download_url %></li>
<% end %>
如何做我必須改變files
方法@github_tmp_files
,以便它允許這種行爲?由於
#in @github_tmp_files -> Class
def files
github_bucket.objects(prefix: @folder)
end
這些是你的類或者是他們從一些寶石來了嗎? –
@MladenJablanović'@github_tmp_files - > Class'是我的課程。什麼'def files'返回的塊是AWS :: S3 :: Object :: Summaries:http://docs.aws.amazon.com/sdkforruby/api/Aws/S3/ObjectSummary.html –
@MladenJablanović這就是爲什麼我可以調用他們的'鑰匙'。我應該向S3對象摘要添加方法嗎?我會怎麼做?謝謝 –