/** * @param \Enjoin\Record\Record $Record * @param array $collection * @param array|null $params * @return \Enjoin\Record\Record */ public static function update(Record $Record, array $collection, array $params = null) { if (isset($params['fields'])) { $collection = Extras::pick($collection, $params['fields']); } foreach ($collection as $field => $value) { $Record->{$field} = $value; } $flags = $Record->scope()->type === self::NON_PERSISTENT ? self::SOFT_SAVE : 0; return static::save($Record, $params, $flags); }
/** * @param array|object|null $collection * @param array|null $params * @return \Enjoin\Record\Record */ public function create($collection = null, array $params = null) { if (isset($params['fields'])) { $collection = Extras::pick($collection, $params['fields']); } $this->cache()->flush(); return $this->build($collection)->save(); }