redbeanphp 默认隐藏属性
Posted
技术标签:
【中文标题】redbeanphp 默认隐藏属性【英文标题】:redbeanphp hide properties by default 【发布时间】:2017-06-19 11:19:13 【问题描述】:我正在使用来自http://redbeanphp.com/ 的令人惊叹的 orm "RedbeanPhp",我非常喜欢它如何加快开发速度,但文档有点过时了。
-
使用
R::findAll()
时如何选择几个属性?
例如我只想选择 id,来自用户的电子邮件,这将抓住所有用户列,但我只需要 2 列。
-
默认情况下是否可以在 bean 中隐藏某些列? “例如在用户内部隐藏密码”?
为了解决这个问题,我目前使用了一些冗长的代码:
$users = R::findAll('users')->export();
foreach($users as $user)
unset($user->password, $user->token);//...etc
print_r($users);
但如果能把它设置在保险丝模型之类的东西里就更好了?!
【问题讨论】:
【参考方案1】:您可以使用getAll($sql_query)
代替findAll()
...在你的例子中
$users= R::getAll('select id,email from users')'
更多关于使用 RedBeanPHP 查询的信息here
Only "con": $users
不是 bean 数组,只是关联数组的数组,以 colnames 作为索引。
如果你觉得不够用,你可以使用函数convertToBeans(...)
,详见之前的链接
【讨论】:
以上是关于redbeanphp 默认隐藏属性的主要内容,如果未能解决你的问题,请参考以下文章
Linux学习之CentOS----文件与目录的默认权限与隐藏权限(转)
Spring Data REST 默认对 JSON 隐藏技术实体字段(@Version、@Id)。如何将它们作为通常的属性返回?