Bataline Framework и 1С-Битрикс — качество, удобство, быстрота

от автора

Основное, что может отпугнуть сильных веб-разработчиков от перехода на CMS 1С-Битрикс — это количество и качество кода, необходимое для выполнения стандартных процедур для манипуляции с данными (создание, изменение, удаление и просмотр).

В самом деле, эти GetList’ы в сложных компонентах превращаются в бесконечный поток кода, по-сути не выполняющего никакой бизнес-логики.

Мы нашли решение, а точнее создали его. Встречайте Bataline Framework.

Что это?

Bataline Framework — это обновляемый программный модуль для 1С-Битрикс, устанавливаемый через 1С-Битрикс Marketplace, позволяющий существенно оптимизировать процесс разработки проектов на основе 1С-Битрикс.
Основной упор при разработке модуля был сделан на оптимизацию работы с данными в инфоблоках, т.к. именно этот модуль является основным хранилищем данных. Нам удалось добиться существенного увеличения скорости разработки и качества кода компонентов.

Для кого?

Прежде всего для разработчиков, которые желают увеличить качество разрабатываемых интернет проектов на 1С-Битрикс, и существенно сократить время и ресурсы, затрачиваемые на разработку.

О да, покажите мне его!

Получение элементов инфоблока:

$oCollection = IbFinder::getInstance()->select('*') 	->from(‘news’) 	->order(‘pos desc’) 	->limit(10) 	->fetchAll();

В данном примере производится выборка коллекции из 10 элементов из инфоблока новостей.

Создание элемента инфоблока:

if (!empty($_POST['com'])) { 	$attr = $_POST['com']; 	$attr['Active'] = "Y"; 	$attr['Code'] = time(); 	$object = new BatalineObject($attr, intval($arParams["IBLOCK_ID"])); 	if ($object->save()) 	{ 		$arResult['success'] = true; 	} }

Создаем новый элемент инфоблока IBLOCK_ID, данные для полей берем из отправленной формы.

Пример обновления элемента:

$oItem = IbFinder::getInstance()->select('*') 	->from($arParams["IBLOCK_ID"]) 	->where(array('Id' => $arParams["ELEMENT_ID"])) 	->fetch(); $oItem->setName(‘Новое название’); $oItem->save(); 

Получаем элемент по идентификатору, присваиваем новое название и отправляем запрос на сохранение.

Пример удаления элемента:

$oItem = IbFinder::getInstance()->select('*') 	->from($arParams["IBLOCK_ID"]) 	->where(array('Id' => $arParams["ELEMENT_ID"])) 	->fetch(); $oItem->delete();

Тут все совсем просто — получаем элемент по идентификатору и удаляем его.

Это все?

Нет. Помимо работы с элементами инфоблоков, модуль позволяет работать с разделами инфоблоков, пользователями, оптимизирует работу с изображениями, свойствами элементов и датой со временем.
Все функционал описан в документации разработчика, доступной на промо-сайте: bataline-framework.ru

Вместо заключения:

Самая актуальная версия модуля находится в репозитории на GitHub по адресу: github.com/pimax/bataline-framework
Примеры компонентов, разработанных с использованием модуля: На Github
Сайт модуля: bataline-framework.ru/
Ну и конечно ссылка на модуль в каталоге Макетплейс: marketplace.1c-bitrix.ru/solutions/bataline.framework/

ссылка на оригинал статьи http://habrahabr.ru/post/179939/


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *