0

在旧的 silverstripe 安装(2.4)中,我有一个小计数器功能,看起来基本上像这样:

class Page_Controller extends ContentController {
  public function countUp(){ 
    $this->Counter = $this->Counter+1;
    $this->writeToStage('Stage');
    $this->publish("Stage", "Live");
  }
}

我想将其移至 SS 3。不知何故,它不再起作用了,计数器属性永远不会在数据库中更新。有人知道为什么吗?

亲切的问候,弗洛里安

4

1 回答 1

2

1 - 该方法应该在 Page 类(模型)上,而不是控制器上。然后你可以调用 $this->data()->countUp(); 来自 Page_Controller 类。

2 - 你需要这行 $this->write(); $this->writeToStage('Stage'); 之前

于 2012-10-05T00:13:38.370 回答