1

我使用以下代码创建了控制器./mysite/code/FileManager.php...

class FileManager_Controller extends Controller
{
    public function upload()
    {
        echo 'It works!!';
    }
}

当我输入http://example.com/filemanager/upload.

我创建了模板文件themes/simple/templates/FileManager.ss。我想在这里编写要上传的 HTML,它应该会在我输入http://example.com/filemanager/upload. 这个怎么做?谢谢你。

4

2 回答 2

1

“上传”是 SilverStripe 中的一项操作 - 您是否尝试过创建 FileManager_upload.ss 文件?

于 2012-11-14T10:48:38.493 回答
1

因为您使用的是直接控制器来处理请求,所以系统不知道您要呈现什么或如何呈现。在使用 CMS 并渲染 a 时,Page这通常会为您处理好。

所以你必须告诉它要渲染什么以及如何渲染。在最简单的形式中,这看起来像:

class FileManager_Controller extends Controller
{
    public function upload()
    {
        return $this->renderWith('FileManager');
    }
}

这将使用模板呈现您的FileManager_Controller课程。FileManager.ss

于 2012-11-15T05:29:02.963 回答