【问题标题】:Virtual field does not appear in REST JSON result虚拟字段未出现在 REST JSON 结果中
【发布时间】:2015-10-05 20:45:14
【问题描述】:

我有一个名为 UsersModel 带有一个名为 full_name 的虚拟字段,它可以在模板中正常工作,方法是调用:

<?= $user->full_name; ?>

但它不会自动进入 REST。

【问题讨论】:

    标签: rest cakephp orm cakephp-3.0


    【解决方案1】:

    引用自文档:

    默认情况下,转换时不导出虚拟属性 实体到数组或 JSON。为了公开虚拟属性,您 需要使它们可见。定义实体类时,您可以 提供应公开的虚拟属性列表:

    namespace App\Model\Entity;
    
    use Cake\ORM\Entity;
    
    class User extends Entity
    {
    
        protected $_virtual = ['full_name'];
    
    }
    

    这个列表可以在运行时使用virtualProperties修改:

    $user->virtualProperties(['full_name', 'is_admin']);
    

    Cookbook > Database Access & ORM > Entities > Exposing Virtual Fields

    【讨论】:

      猜你喜欢
      • 2015-06-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-05-16
      • 1970-01-01
      相关资源
      最近更新 更多