Литий:Как работает Document->save() или Record->save()

StackOverflow https://stackoverflow.com//questions/11672621

  •  12-12-2019
  •  | 
  •  

Вопрос

В литиевых классах документов и записей или их суперклассах/интерфейсах нет метода save().Однако метод лития для сохранения записи заключается в следующем:

$record = Model::create()
$record->save()

Я не уверен, как это работает, поскольку у записи нет метода сохранения (есть только у модели).

Это было полезно?

Решение

Document и Record простираться от базы Entity сорт.А Entity в классе есть __call() магический метод.См. документ API для Entity::__call здесь: http://li3.me/docs/lithium/data/Entity::__call() Этот метод получает экземпляр Model класс, связанный с Entity а затем вызывает метод, передавая объект сущности в качестве первого аргумента.А Добавление функций в модели раздел руководства по литиевой системе также содержит дополнительную информацию по этому поводу.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top