如何在CakePHP 3.4中取消设置请求数据

时间:2017-07-09 06:49:10

标签: cakephp cakephp-3.0

我试图搜索这个,但我发现没有运气。

它表示$ request->数据将在4.0中弃用,并建议使用$ request-> getData()代替。

当我们无法取消设置时,如何取消设置请求数据?

这在登录或注册密码时很有用。当验证失败时,他们必须重新输入密码。

1 个答案:

答案 0 :(得分:4)

有一种简单的方法可以在不触及请求对象的情况下执行此操作,即通过将空字符串传递给控件value选项,这样,当字段为&#39时,字段将始终为空;正在呈现:

$this->Form->control('password', ['value' => ''])

话虽如此,如果确实需要在请求对象上取消设置POST数据(通常表明你正在做的事情有问题),你可以使用{{1要么清空所有东西:

withParsedBody()

或写回部分数组:

$this->request = $this->request->withParsedBody([]);

这可能看起来有点奇怪,但正如已经提到的,需要经常在请求对象上取消设置数据表明应用程序逻辑存在缺陷。