是否可以在yii中以禁用save()
功能的方式创建AR模型?我正在使用模型来显示从其他来源输入到数据库的数据,并且永远不需要更新它。
更新 那么我覆盖哪些方法,基类中的哪些方法实际上会向DB写一些东西?
答案 0 :(得分:3)
只需覆盖save
并让它抛出适当的异常。例如:
public function save(bool $runValidation=true, array $attributes=NULL)
{
throw new \LogicException("This kind of model does not support saving.");
}
这样一来,任何错误地调用该方法的人都会清楚这一点。
不要忘记也覆盖saveAttributes
,因为这两种方法不幸完全独立。