Я хочу создать многопользовательское SaaS-приложение на PHP с Laravel 5.4. Я подготовился почти ко всем модулям, которые требуются для архитектуры, но теперь я поражен Автоматическим созданием пользовательских полей .

Как мы настраиваем формы в SAP, Oracle eBiz Suit, Sage CRM, Salesforce и т. Д. Я хочу создать такую схему. Поэтому, если любому пользователю / компании требуется настраиваемое поле или набор полей, мне не нужно переписывать код. Поля должны быть добавлены как функция перетаскивания.

Я не знаю, есть ли у этой технологии конкретный термин ... Но мне нужны некоторые руководства и руководства по архитектуре этого модуля.

Спасибо за вашу помощь!

1
Sarmad 25 Апр 2017 в 03:31

2 ответа

Лучший ответ

Вы можете сделать это, изменив базу данных.

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

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

После этого изображение ниже может быть достигнуто путем учета взаимосвязи между полями таблицы. Я поставил один и тот же цвет для полей, связанных друг с другом. введите описание изображения здесь

Остальное, я полагаю, вы уже знаете, как это сделать в Laravel.

5
JMS786 19 Май 2017 в 12:08

Если вы хотите использовать Laravel drag-and-drop, генератор пользовательских форм, похожий на CRM, wufoo, surveymonkey, google формы, формстак и т. Д., То я рекомендую:

  1. Создайте приложение Laravel и добавьте аутентификацию: php artisan make: auth
  2. Интегрируйте компонент Form Builder с помощью библиотеки JavaScript, такой как jQuery Form Builder
  3. Создайте таблицу для форм с внешним ключом для пользователя. Сохраните макет формы в формате JSON как поле в вашей таблице.
  4. Создайте таблицу для представлений, которая имеет внешний ключ к форме. Сохраните отправку формы в формате JSON как поле в вашей таблице.
  5. Посмотрите пример пакета laravel на Github Laravel Drag and Drop Builder
0
Jazmy 28 Янв 2019 в 06:26
43599662