2012-10-19 31 views
1

我在與在SilverStripe CMS多UploadFields的問題。SilverStripe 3多UploadField問題

在上傳一些圖片,他們似乎可以正確上傳和預覽。但是,在保存頁面並重新加載和查看前端時,沒有圖像。預覽應該只是一個空白圖像,前端沒有URL輸出。

圖像被上傳到資產目錄和路徑在數據庫中的文件是正確的。我現在有點虧了。

下面是從我的頁面模型

<?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; 
} 

} 

回答

2

代碼是它只是網站的前端與你有問題?您能否在模板文件中顯示您使用的代碼來顯示圖像?

它應該看起來像

<% loop $Images %> 
    $setSize(150,150) // whatever you want to use here 
<% end_loop %> 

不能使用$ Image.whatever,它不會工作。

+0

這不只是前端,它在CMS了。 –

+0

試圖去除addFieldsToTab的$這個 - >圖片()()函數。 –

+0

有同樣的問題,刪除$ this-> Images()解決了它。不知道我從哪裏複製/粘貼... – nnevala

0

假設你正在使用默認的主題「簡單」,已在後臺(CMS)創建的類型「頁面」的頁面,上傳的圖片,並發表了頁面。

轉到:

根文件夾 - >主題 - >簡單 - >模板 - >佈局 - >打開文件 「Page.ss」

類型(解決方案由上述「Ryan M」提供)

<% loop $Images %> 
    $setSize(150,150) 
<% end_loop %> 

<div class="content">$Content</div> 

通過在瀏覽器的地址欄中提供頁面網址,轉到前端。