Theo quan điểm của GSP của tôi, tôi có mã này:Làm cách nào để buộc grails tải xuống tệp csv?
<g:each in="${fileResourceInstanceList}" status="i" var="fileResourceInstance">
<tr class="${(i % 2) == 0 ? 'odd' : 'even'}">
<td>${fileResourceInstance.decodeURL()}</td>
<td><a href="${createLinkTo(dir:"/upload_data/datasets/ds"+signalDataInstance.datasetID , file: fileResourceInstance.decodeURL(), absolute:true)}" target="_new">view</a></td>
<td><g:link action="deleteFile" id="${fileResourceInstance.replace('.','###')}" params="[rs:signalDataInstance.datasetID]" onclick="return confirm('Are you sure?');"> delete </g:link></td>
</tr>
</g:each>
Tôi muốn tải file csv của tôi, và không đọc file csv của tôi trong trình duyệt của tôi!
Làm cách nào để tải xuống?
Dưới đây là một phần mã trong bộ điều khiển của tôi:
def f = new File("${linkDir}".toString())
if(f.exists()){
f.eachFile(){ file->
if(!file.isDirectory())
fileResourceInstanceList.add(file.name)
}
}
đâu để thêm phần này trong mã của tôi để buộc tải? :
response.setHeader("Content-disposition", "attachment; filename=" + file.name + ".csv");
render(contentType: "text/csv", text: file.name.toString());
tôi m phân tích tệp từ một thư mục, thêm tập tin tên trong danh sách "fileResourceInstanceList". Theo quan điểm của tôi cho mỗi fileResourceInstanceList tôi thêm một liên kết đến các tập tin csv. Plugin xuất hoạt động với lớp miền, tôi không chắc mình có thể sử dụng plugin hữu ích này không? –
hmm, có thể không phải trong trường hợp đó, ít nhất là không phải không có sửa đổi. –