【问题标题】:redbeanphp hide properties by defaultredbeanphp 默认隐藏属性
【发布时间】:2017-06-19 11:19:13
【问题描述】:

我正在使用来自http://redbeanphp.com/ 的令人惊叹的 orm "RedbeanPhp",我非常喜欢它如何加快开发速度,但文档有点过时了。

  1. 使用R::findAll()时如何选择几个属性?

例如我只想选择 id,来自用户的电子邮件,这将抓住所有用户列,但我只需要 2 列。

  1. 默认情况下是否可以在 bean 中隐藏某些列? “例如在用户内部隐藏密码”?

为了解决这个问题,我目前使用了一些冗长的代码:

$users = R::findAll('users')->export();
foreach($users as $user){
 unset($user->password, $user->token);//...etc
}
print_r($users);

但如果能把它设置在保险丝模型之类的东西里就更好了?!

【问题讨论】:

    标签: php orm redbean


    【解决方案1】:

    您可以使用getAll($sql_query) 代替findAll()

    ...在你的例子中

    $users= R::getAll('select id,email from users')'

    更多关于使用 RedBeanPHP 查询的信息here

    Only "con": $users 不是 bean 数组,只是关联数组的数组,以 colnames 作为索引。

    如果你觉得不够用,你可以使用函数convertToBeans(...),详见之前的链接

    【讨论】:

      猜你喜欢
      • 2018-09-08
      • 1970-01-01
      • 2011-11-10
      • 2012-05-30
      • 2015-12-08
      • 2010-10-11
      • 1970-01-01
      • 1970-01-01
      • 2021-12-01
      相关资源
      最近更新 更多