php - 获取 Cakephp 3 显示 bool 值的真/假

标签 php cakephp cakephp-3.0

使用 cakephp 3,我在表中有一个 bool 值 [tinyint(1)],编辑和添加模板在表单上有一个复选框,但是如何让索引和 View 模板显示一个字符串真/假或是/否,而不是 1/0。我是否将它们映射到 Controller 操作中,或者是否有可以添加到模板的选项?

最佳答案

给出的答案都很好。

我在 /src/View/Helper/FormatBooleanHelper.php 中创建了一个 Helper 类,如下所示:

<?php
/*
* FormatBooleanHelper
*
* CakePHP Helper created to format boolean values in either Yes/No or True/False text.
* By:  Jared Testa
*
*/

namespace App\View\Helper;

use Cake\View\Helper;

class FormatBooleanHelper extends Helper
{

/**
 * yesNo method
 *
 * @param boolean| $value boolean
 * @return string
 *
 */

public function yesNo($value, $showNo = true) {
    return ($value) ? "Yes" : (($showNo) ? "No" : "");
}

/**
 * trueFalse method
 *
 * @param boolean| $value boolean
 * @return string
 *
 */

public function trueFalse($value, $showFalse = true) {
    return ($value) ? "True" : (($showFalse) ? "False" : "");
}

}

?>

通过在 AppView.php 文件的初始化方法中包含 $this->loadHelper('FormatBoolean'); 在标准约定中使用帮助器。

然后,您可以通过包含 $this->FormatBoolean->yesNo($booleanVariable)$this->FormatBoolean->yesNo($booleanVariable, false) 在 View 中使用 Helper 在你看来。后一个示例将在错误响应中将该字段留空。

矫枉过正?也许……但我认为它适合 CakePHP 结构,而且它是创建您自己的助手的一个很好的练习。

我在 CakePHP 3.3.4 版中使用了助手。希望这对将来的某人有所帮助。

关于php - 获取 Cakephp 3 显示 bool 值的真/假,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32635856/

相关文章:

php - 使用 html 帮助程序链接方法的 cakephp 安全链接

php - MySQL:向当前用户显示帖子提要和帖子喜欢

mysql - 我想获得最后插入的 ID

javascript - 如何实现我在 php 中使用的 simplepagination 插件?

php - 从 Android 应用程序在线访问 MySQL 哪一个更好? RESTful Web 服务还是异步任务?

php - 使用 cakephp 3 从不同的数据库中检索关联模型

php - CakePHP:如何在我的所有 View 中直接在布局文件中显示相同的查询数据

php - 小数点价格到 32 位价格

php - 需要一次(/var/www/html/presta/var/cache/prod/appParameters.php): failed to open stream: No such file or directory

ajax - cakephp 3.0 中的简单 ajax 表单