QianDao CMS представляет собой не только минималистичную систему управления контентом, но также и PHP-фреймворк для базового программирования. Он включает наиболее часто используемые базовые библиотеки.
Кроме того, QianDao CMS предлагает конфигурируемый генератор кода (генератор кода), который позволяет быстро создавать CRUD-приложения для системы управления контентом.
В отличие от других автоматических генераторов кода, большинство приложений CRUD, созданных с помощью QianDao генератора, не требуют значительной доработки перед использованием в продакшене. При этом система обеспечивает двойную проверку входных данных на уровне контроллеров и представлений, что снижает необходимость проведения лишних тестов.
Генератор кода не создаёт ненужный код за рамками реализации функциональности системы, что гарантирует читаемость, удобство обслуживания и расширяемость кода, а также облегчает итерационное развитие и глубокую кастомизацию.
QianDao CMS основан на CodeIgniter 2.0 и поддерживается командой проекта QianDao как внутренний фреймворк для базовой разработки. После выпуска CI 3.0 QianDao CMS был перенесён на CI 3.0 и открыт для общего доступа 18 января 2016 года.## Установка Как фреймворк для базовой разработки, QianDao CMS предназначен для специалистов и не предоставляет руководства по установке. Один из ключевых принципов дизайна — не добавление кода, не связанного с функциональностью системы, чтобы поддерживать простоту, расширяемость и удобство обслуживания QianDao CMS.### Создание базы данных
CREATE DATABASE IF NOT EXISTS qdsay DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
Создайте пользователя: qdmaster и назначьте ему права на чтение, запись, обновление и удаление для базы данных: qdsay, а также установите пароль доступа: 123456
GRANT SELECT, INSERT, UPDATE, DELETE
ON qdsay.*
TO qdmaster@localhost
IDENTIFIED BY '123456';
Импортировать структуру таблиц базы данных:
USE qdsay;
SOURCE ./database/qdsay.sql
# vim application/config/database.php
# vim application/backend/config/database.php
# vim application/config/config.php
# vim application/backend/config/config.php
Представление для фронтэнда: qdsay/index.php Представление для бэкэнда: qdsay/backend/index.php
# sudo chmod -R 755 qdsay
# sudo chmod -R 777 qdsay/uploads
# sudo chmod -R 777 qdsay/application/cache
# sudo chmod -R 777 qdsay/application/logs
# sudo chmod -R 777 qdsay/application/backend/cache
# sudo chmod -R 777 qdsay/application/backend/logs
Основной фреймворк Qidian имеет мощный генератор кода с высокой степенью настройки.
#sudo chmod -R 777 qdsay/application/controllers
#sudo chmod -R 777 qdsay/application/models
#sudo chmod -R 777 qdsay/application/views
#sudo chmod -R 777 qdsay/application/backend/controllers
#sudo chmod -R 777 qdsay/application/backend/models
#sudo chmod -R 777 qdsay/application/backend/viewsПримечание: После публикации проекта следует установить разрешения указанных выше директорий в 755, как показано ниже: #sudo chmod -R 755 qdsay/application/controllers
#sudo chmod -R 755 qdsay/application/models
#sudo chmod -R 755 qdsay/application/views
#sudo chmod -R 755 qdsay/application/backend/controllers
#sudo chmod -R 755 qdsay/application/backend/models
#sudo chmod -R 755 qdsay/application/backend/views## Дополнительное развитие Qidian CMS как основной фреймворк развития позволяет легко расширять программу,
Если требуется использование CRUD программ, используйте следующую базовую структуру таблицы базы данных. Для каждой таблицы и каждого поля добавьте COMMENT.
CREATE TABLE
qd_table_name
(
id
int(10) unsigned NOT NULL AUTO_INCREMENT,
addtime
int(10) unsigned NOT NULL DEFAULT '0' COMMENT 'Дата добавления',
uptime
timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'Дата последнего обновления',
PRIMARY KEY (id
),
KEYindex_addtime
(addtime
),
KEYindex_uptime
(uptime
)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 COMMENT='Статья';
Основной фреймворк разработки Qidian CMS имеет мощный генератор кода (шаблонизатор), который автоматически создает начальную конфигурацию согласно установленным правилам. Поэтому нам необходимо предоставить указанным выше директориям права записи, а перед публикацией проекта удалить шаблонизаторскую программу.
qdsay/application/backend/scaffold/
qdsay/application/backend/controllers/Scaffold.php
qdsay/application/backend/models/Scaffold_model.php
qdsay/application/backend/libraries/Template.php
#sudo chmod -R 777 qdsay/application/backend/scaffold/compiled
#sudo chmod -R 777 qdsay/application/backend/scaffold/template
#sudo chmod -R 777 qdsay/application/backend/scaffold/setup
localhost/backend/scaffold#### Настройка типов полей ввода и способов ввода: Поле для текста: Text
Поле для пароля: Password
Текстовое поле: TextArea
Компонент дерева категорий: Catalog
Выпадающий список (из БД): Select-From-DB
Выпадающий список (из массива): Select-From-Array
Одиночный выбор (из БД): Radio-From-DB
Одиночный выбор (из массива): Radio-From-Array
Множественный выбор (из БД): CheckBox-From-DB
Множественный выбор (из массива): CheckBox-From-Array
Переключатель: Switch
Скрытый input: Hidden
Компонент загрузки файлов: Attach
Компонент предварительного просмотра изображений: Image
Компонент галереи: Gallery
Компонент редактирования: RichTextEditor
localhost/backend/scaffold#### Настройка типов полей ввода и способов ввода: Поле для текста: Text
Поле для пароля: Password
Текстовое поле: TextArea
Компонент дерева категорий: Catalog
Выпадающий список (из БД): Select-From-DB
Выпадающий список (из массива): Select-From-Array
Одиночный выбор (из БД): Radio-From-DB
Одиночный выбор (из массива): Radio-From-Array
Множественный выбор (из БД): CheckBox-From-DB
Множественный выбор (из массива): CheckBox-From-Array
Переключатель: Switch
Скрытый input: Hidden
Компонент загрузки файлов: Attach
Компонент предварительного просмотра изображений: Image
Компонент галереи: Gallery
Компонент редактирования текста: Editor
Компонент ввода даты: Date
Трехуровневое меню (провинция): Position-Province
Трехуровневое меню (город): Position-City
Трехуровневое меню (район): Position-District
Включен/отключен: Enabled
Дата добавления: AddTime
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )