• Модуль: ml
  • Путь к файлу: ~/bitrix/modules/ml/lib/model.php
  • Класс: BitrixMlModel
  • Вызов: Model::create
static function create($name, $type, array $fields)
{
	$result = new Result();

	// checking for existence
	$instance = static::loadWithName($name);
	if($instance)
	{
		return $result->addError(new Error("Model " . $name . " already exists"));
	}

	$client = new Client();
	$apiResult = $client->createModel([
		"name" => $name,
		"type" => "binary",
		"fields" => $fields
	]);
	if(!$apiResult->isSuccess())
	{
		return $result->addErrors($apiResult->getErrors());
	}

	$instance = new static();
	$instance->setName($name);
	$instance->setType($type);
	$instance->setState(static::STATE_NEW);

	$instance->save();

	$result->setData([
		'model' => $instance
	]);

	return $result;
}