Model::factory PHP Method

factory() public static method

The class name should be supplied as a string, and the class should already have been loaded by PHP (or a suitable autoloader should exist). This method actually returns a wrapped ORM object which allows a database query to be built. The wrapped ORM object is responsible for returning instances of the correct class when its find_one or find_many methods are called.
public static factory ( string $class_name, null | string $connection_name = null ) : ORMWrapper
$class_name string
$connection_name null | string
return ORMWrapper
    public static function factory($class_name, $connection_name = null)
    {
        $class_name = self::$auto_prefix_models . $class_name;
        $table_name = self::_get_table_name($class_name);
        if ($connection_name == null) {
            $connection_name = self::_get_static_property($class_name, '_connection_name', ORMWrapper::DEFAULT_CONNECTION);
        }
        $wrapper = ORMWrapper::for_table($table_name, $connection_name);
        $wrapper->set_class_name($class_name);
        $wrapper->use_id_column(self::_get_id_column_name($class_name));
        return $wrapper;
    }

Usage Example

Example #1
0
 public function getHome($request, $response, $args)
 {
     $template = $this->twig->loadTemplate('index.twig');
     $posts = \Model::factory('App\\Models\\Post')->find_many();
     $response->setContent($template->render(['posts' => $posts]));
     return $response;
 }
All Usage Examples Of Model::factory