MV framework logo
  • Архитектура
    • Философия
    • Технологии
    • CMF
    • История версий
  • Админ панель
  • Поддержка
  • Обратная связь
  • Примеры кода
    • Новостная лента
    • Слайдер с баннерами
    • Список с фильтрацией
    • Форма с загрузкой файла
    • AJAX форма на jQuery
    • Вопросы и ответы
    • Каталог с товарами
    • Авторизация пользователя
    • Регистрация пользователя
    • Личный кабинет пользователя
Скачать Версия 2.5 от 08.07.2021
Документация
  • Архитектура
    • Философия
    • Технологии
    • CMF
    • История версий
  • Админ панель
  • Поддержка
  • Обратная связь
  • Примеры кода
    • Новостная лента
    • Слайдер с баннерами
    • Список с фильтрацией
    • Форма с загрузкой файла
    • AJAX форма на jQuery
    • Вопросы и ответы
    • Каталог с товарами
    • Авторизация пользователя
    • Регистрация пользователя
    • Личный кабинет пользователя
Начало работы
  • Установка и запуск
  • Структура папок
  • Запуск простого сайта
  • Предустановленные модели
  • SQLite начало работы
  • Системные настройки
  • Миграции
Модели (models)
  • Общие принципы моделей
  • Типы данных
  • Настройка модели
  • Простые модели
  • Внешние ключи
  • Деревья
  • Многие ко многим
  • Группа
  • Управление записями
  • Управление простыми моделями
  • Дополнительные возможности
Шаблоны (views) и маршрутизация (routes)
  • Общие принципы шаблонов
  • Объект класса Router
  • Объект MV
  • Index, default и 404 шаблоны
  • Создание нового шаблона
  • Вывод данных в шаблоне
  • Объект класса Record
  • Файлы и изображения
  • Дата и время
  • Редиректы
  • Отправка email
  • Специальные методы
Формы
  • Создание форм
  • Настройка полей формы
  • Правила проверки полей формы
  • Проверка полей формы
  • Работа с данными формы
  • Использование данных из моделей
  • Методы форм
SQL запросы
  • Конструктор запросов
  • Прямые запросы
  • Постраничная разбивка
  • Сортировка
  • Фильтрация
  • Загрузка из csv файлов
Сессии и безопасность
  • Работа с сессиями
  • AJAX
  • Кэширование
  • Безопасность
  • Отладка
Плагины
  • Общие принципы плагинов
  • Дополнения к административной панели
Документация
Начало работы
  • Установка и запуск
  • Структура папок
  • Запуск простого сайта
  • Предустановленные модели
  • SQLite начало работы
  • Системные настройки
  • Миграции
Модели (models)
  • Общие принципы моделей
  • Типы данных
  • Настройка модели
  • Простые модели
  • Внешние ключи
  • Деревья
  • Многие ко многим
  • Группа
  • Управление записями
  • Управление простыми моделями
  • Дополнительные возможности
Шаблоны (views) и маршрутизация (routes)
  • Общие принципы шаблонов
  • Объект класса Router
  • Объект MV
  • Index, default и 404 шаблоны
  • Создание нового шаблона
  • Вывод данных в шаблоне
  • Объект класса Record
  • Файлы и изображения
  • Дата и время
  • Редиректы
  • Отправка email
  • Специальные методы
Формы
  • Создание форм
  • Настройка полей формы
  • Правила проверки полей формы
  • Проверка полей формы
  • Работа с данными формы
  • Использование данных из моделей
  • Методы форм
SQL запросы
  • Конструктор запросов
  • Прямые запросы
  • Постраничная разбивка
  • Сортировка
  • Фильтрация
  • Загрузка из csv файлов
Сессии и безопасность
  • Работа с сессиями
  • AJAX
  • Кэширование
  • Безопасность
  • Отладка
Плагины
  • Общие принципы плагинов
  • Дополнения к административной панели

CMF - гибкий framework для веб разработки

Фреймворк MV представляет собой гибкую CMF (Content Managemant Framework) для веб разработки. В основе данной CMF лежит идея по управлению разнородным контентом через единую административную панель с возможностью быстрого наращивания количества полей модуля при необходимости.

Оптимизируем код вместе с CMF MV framework

В MV присутствует разделение контента на таблицы, каждая из которых управляется своей моделью. Между моделями устанавливаются связи вида: внешний ключ, многие к одному и многие ко многим. Разделение контента по различным таблицам приводит к существенной оптимизации количества SQL запросов при извлечении данных.

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

Также CMF позволяет быстро и эффективно отображать содержимое моделей на страницах сайта. Система содержит много встроенных методов для вывода полей моделей и позволяет дописывать собственные методы в моделях для генерации HTML кода.

class Reviews extends Model
{
    protected $name = "Отзывы";
   
    protected $model_elements = array(
        array("Активация", "bool", "active", array("on_create" => true)),
        array("Порядок","order","order"),
        array("Дата", "date", "date"),
        array("Имя", "char", "name", array("required" => true)),
        array("Отзыв", "text", "review", array("required" => true)),
        array("Фото", "image", "image"),
    );

    public function display()
    {
        $rows = $this -> select(array("active" => 1,
                                      "order->asc" => "order", 
                                      "limit->" => $this -> pager -> getParamsForSelect()));
        $html = "";
       
        foreach($rows as $row)
        {
            if($row['image'])
                $html .= '<div class="review-img">'.$this -> cropImage($row['image'], 147, 147).'</div>';
      
            $html .= '<div class="review-text"><p>'.$row['review'].'</p></div>';
        }
       
        return $html;
    }
}

Обычные и простые модели MV

Обычные модели созданы для управления содержимым, которое можно классифицировать как списки. К ним относятся различные меню страниц, каталоги, фотогалереи, клиентские базы и т.д. При этом часть контента сайта не вписывается в данные рамки, потому что присутствует в единственном числе. К такому типу относятся: телефоны, логотип, контактные данные, слоганы, повторяющаяся информация в верхней и нижней части сайта, email для отправки писем с сайта, различные наcтройки и многие другие данные, которые не могут быть представлены списками из элементов одного типа.

Для управления такими данными MV предлагает использовать простые модели. В них данные модели хранятся в структуре вида "ключ, значение". Для добавления нового поля в простую модель достаточно дописать 1 строку кода в PHP файл модели, при этом вносить изменения в базу данных не нужно.

class Options extends Model_Simple
{
    protected $name = "Настройки";

    protected $model_elements = array(
        array("Адрес", "char", "address"),
        array("Уменьшать количество товара после заказа", "bool", "decrease_after_order")
    );
}

Для отображения на сайте данных из простой модели CMF предоставляет удобный интерфейс с минимальным количеством запросов к базе данных.

Предыдущий раздел

Технологии

Следующий раздел

История версий

© 2012-2022, MV framework team

English Лицензия

Поделиться