我有一个名为用户的Model
,其中包含一个名为full_name的虚拟字段,通过调用它可以在模板中正常工作:
<?= $user->full_name; ?>
但它不会自动进入REST。
答案 0 :(得分:2)
来自文档的引用:
默认情况下,转换时不会导出虚拟属性 实体到数组或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 Properties 强>