2

我是 Orchard 的新手,我想知道用下载链接构建基本文档列表的“最佳”方式?

假设场景是这样的,我想制作一份新闻稿列表,新闻稿是 PDF 格式,用户应该可以直接从列表视图中下载。管理员应该可以轻松添加新的时事通讯,并且应该会出现在列表中。

我目前的思路是,通过仪表板,

  1. 创建具有标题字段和媒体选择器字段的内容类型“新闻通讯”,使用媒体选择器字段上传 PDF 文件。
  2. 然后创建一个查询,过滤器内容类型为“Newsletter”
  3. 创建一个指向查询的投影

但是,这只给了我一个内容项列表,将它们的标题显示为指向实际内容项的链接。

我尝试向查询添加布局并将其设置为显示属性而不是内容。通过这样做,我可以获得一个列表,我可以在其中更多地控制“输出”。我已经让它列出了标题,并通过重写并放入 MediaPicker.Url,它还在列表中显示了 URL。这一切都很好,但我在这里卡住了..

由于 MediaPicker.URL 以 ~/media/default/xyz/filename.pdf 之类的格式输出 url,我不能只将其放入 aa href,它没有提供文件的正确下载链接。

Soo,问题是,我是在思考并以完全错误的方式做这件事,还是我遗漏了一些明显的东西?欢迎所有想法和建议以及更多。

4

1 回答 1

0

在您的主题中使用或调整以下模板覆盖:

@{
    var url = Model.ContentField.Url;
}
@if(Model.ContentField.Url != null) {
    if (url.StartsWith("~/")) {
        url = Href(url);
    }
    <div class="media-picker-field attachment-pdf">
        <a href="@url" class="pdf-download" title="@T("Download the PDF")"><span>download</span></a>
    </div>
}

根据需要修改文本。此模板是一个 Fields.MediaPicker-PDF.cshtml,用于名为 的媒体选择器字段PDF

于 2013-02-09T04:12:07.880 回答