Phalcon ORM是新的

问题描述 投票:0回答:3

Phalcon的ORM有类似isNew的东西吗?

目前我用的是:

{% if user.getID() %}
    {{ 'Edit user ' ~ user.name }}
{% else %}
    {{ 'New user' }}
{% endif %}

但不确定它是否正确。

Phalcon 1.3.x请。谢谢

phalcon
3个回答
2
投票

我在我的所有模型上使用这种类型的模式,并以与您相同的方式使用isNew()。

class SomeModel extends Phalcon\Mvc\Collection {

    public static function getNew() {

        $t = new self();
        $t->someFieldToInit = 'some-val';
        return $t;
    }

    public static function findByIdOrNew($_id) {

        $t = self::findById($_id);
        return $t ?: self::getNew();
    }

    public function isNew() {

        return !$this->getId();
    }
}

1
投票

getId方法似乎在上一版本中不可用:https://docs.phalconphp.com/3.4/en/api/Phalcon_Mvc_Model

它可以使用“脏状态”代替:

public function isNew() {
    return $this->getDirtyState == self::DIRTY_STATE_TRANSIENT;
}

-1
投票

什么是你的新情况?如果检查过任何人刚刚注册到您的网站。也许我们可以使用身份验证来获取该用户

© www.soinside.com 2019 - 2024. All rights reserved.