Вставка ссылок по шаблону (ютуб ссылка, patternString)

Тип поля patternString позволяет ввести некое поле в определенном формате (например, ссылка на Youtube) и вывести в неком виде рядом разметку с кодом из этого поля в виде некой разметки (для Youtube - это iframe с YoutubeID). 

Демостенд обработки Youtube ссылки - https://demo.web-automation.ru/list/watch/obrabotka-youtube-ssylki-na-forme---88

Человек вставляет ссылку на ютуб и получает визуализацию. Платформа извлекает по шаблону некую строку и начальную строку ввода и подставляет ее в специальную разметку. 

Как это реализовать: 

1. Указываем тип поля Строка по шаблону (patternString)

2. В GetItem указываем начальное значение в виде "Исходная строка||value", где Value - это по примеру youtubeID

Также указываем options_ для поля, в котором указываем массив шаблонов templates (регулярные выражения) и   makeup - разметку со вставкой переменной {value}, которое будет подменяться на value из строки ввода.

-- GetItem for form
SELECT
  --'https://www.youtube.com/watch?v=HTNlwdYBef4||HTNlwdYBef4' s50,
  'https://youtu.be/HTNlwdYBef4||HTNlwdYBef4' s50,
  '{"templates": [".*?v=(.*)$", "https://youtu.be/(.*)$"], "makeup": "" }' options_s50

Примечание:

  • в примере указано 2 шаблона адреса для Youtube ссылок. 
  • если шаблонов подходит несколько, то применится последний подходящий шаблон. 
  • в шаблонах некоторые символы заменяются на html аналоги (например & заменяется на &amp), помните об этой особенности

3. В SaveItem мы получаем это поле в виде  "Исходная строка||value", которое можно разобрать с помощью функции dbo.str_splitPart

-- saveItem
set @inputString = dbo.splitPart(@val, '||', 1)
set @elementID = dbo.splitPart(@val, '||', 2)

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

Falcon Space - функциональная веб-платформа разработки на узком стеке MS SQL/Bootstrap. Вводная по Falcon Space
Насколько полезной была статья?

Google поиск по нашей документации

Выгода от использования Falcon Space

В 2-3 раза экономнее и быстрее, чем заказная разработка
Более гибкая, чем коробочные решения и облачные сервисы
Используйте готовые решения и изменяйте под свои потребности
Нужна бесплатная консультация?
Планируете делать веб-проект?
Сайт использует Cookie. Правила конфиденциальности OK