我在SilverStripe CMS中遇到多个UploadFields的问题。
上传大量图片时,它们似乎可以正确上传和预览。但是,在保存页面并重新加载和查看前端时,没有图像。预览应该只是一个空白图像,并且前端没有URL输出。
图像正在上传到assets目录,数据库中文件的路径是正确的。我现在有点亏。
以下是我的Page模型中的代码
<?php
class Page extends SiteTree {
public static $db = array(
);
public static $many_many = array(
'Images' => 'Image'
);
public function getCMSFields() {
$fields = parent::getCMSFields();
$fields->addFieldsToTab('Root.Main', new UploadField('Images','Images',$this->Images()), 'Content');
return $fields;
}
}
答案 0 :(得分:2)
它只是您遇到问题的网站的前端吗?你能在模板文件中显示你用来显示图像的代码吗?
应该看起来像
<% loop $Images %>
$setSize(150,150) // whatever you want to use here
<% end_loop %>
你不能使用$ Image.whatever,它将不起作用。
答案 1 :(得分:0)
假设您使用默认主题“简单”,则在后端(CMS)创建了一个“页面”类型的页面,上传了图像并发布了页面。
转到:
根文件夹 - &GT;主题 - &GT;简单 - &GT;模板 - &GT;布局 - &GT;打开文件“Page.ss”
类型(由上面的“Ryan M”提供的解决方案)
<% loop $Images %>
$setSize(150,150)
<% end_loop %>
在
<div class="content">$Content</div>
通过在浏览器的地址栏中提供您的页面网址来转到前端。