1

我正在尝试在学说 odm中实现这种模式http://cookbook.mongodb.org/patterns/random-attribute/ 。

我想在 pre-persist 生命周期事件上设置这个属性。为了达到最佳效果,我想使用原生 javascript 函数 Math.random() 因为 php 无法生成随机浮点数,我想避免为此编写自定义函数。

有没有办法做到这一点?

我试过了:

    /** @PrePersist */
    public function generateRandom()
    {
        $this->random = new \MongoCode('Math.random()');
    }

但无论函数的代码如何,它总是将属性设置为 1

4

1 回答 1

-1

我不确定这是最好的解决方案,但它对我有用:

/**
 * @MongoDB\PrePersist()
 * @MongoDB\PreUpdate()
 */
public function generateRandom() {
    $this->random = rand();
}
于 2014-02-18T13:24:22.897 回答