Devise\Pages\Collections\CollectionsManager::createNewInstance PHP Method

createNewInstance() public method

Create a new collection instance
public createNewInstance ( array $input ) : CollectionInstance
$input array
return CollectionInstance
    public function createNewInstance(array $input)
    {
        $instance = $this->CollectionInstance->newInstance();
        $instance->page_version_id = $input['page_version_id'];
        $instance->collection_set_id = array_get($input, 'collection_set_id', null);
        $instance->name = $input['name'];
        $instance->sort = $this->findSortNumber($instance);
        $instance->save();
        $fields = array_get($input, 'fields', []);
        foreach ($fields as $field) {
            $this->createNewInstanceField($instance, $field);
        }
        return $this->CollectionInstance->newInstance()->with('fields')->findOrFail($instance->id);
    }

Usage Example

Beispiel #1
0
 /**
  * Stores the instance with given pageversion and collection set ids
  *
  * @param  integer $pageVersionId
  * @param  integer $collectionSetId
  * @param  array $input
  * @return instance
  */
 public function requestStoreInstance($pageVersionId, $collectionSetId, $input)
 {
     return $this->CollectionsManager->createNewInstance($input);
 }