AppSmith - Сценарии 

Page / - Изменено Alexandr Fokin в 2023/01/16 17:40 

Сценарии 
Изменено Alexandr Fokin
в 2023/01/16 17:40

Оглавление

 	При работе со сложным запросом в Postgresql столкнулся с проблемой, что AppSmith считывал не финальный SELECT в конце запроса, а кол-во измененных строк (AffectedRows).
Запрос содержал временную таблицу, в которую агрегировались данные.
Возможное обходное решение - оборачивание запроса в хранимую функцию.	
Встраивание	 
Embed	<iframe src="<LINK_OF_APP>?embed=true" height="700" width="100%">
</iframe>
iframe	
Встраивание элементов в RichTextEditor	Блок "Inser/Edit media"	
	
API для получения текущего пользователя	appsmith.user.name	
Выполнение при открытии страницы	Выполнение запроса к источнику данных	Запрос -> Settings -> Run API on Page load	
Выполнение JS функции	Js class -> Settings -> RUN ON PAGE LOAD	
	
Хранение данных.	AppSmith позволяет использовать LocalStore через свой API.	 	
Но также есть возможность обратиться к IndexDb.	 	
	
Ссылки из IFrame	AppSmith поддерживает контрол Iframe. С определенного момента, ссылки, расположенные внутри содержимого Iframe, перестали нормально открываться в определенных браузерах.
Как простое решение можно использовать следующий скрипт:
setInterval(
  () => 
  {
   const list = document.getElementsByTagName('IFrame');
   for (let item of list) {
       const content = item.srcdoc;
       
       if (
          item.sandbox.length !== 0
         && content !== ''
          )
        {
          item.removeAttribute('sandbox');
          item.srcdoc = null;
          item.srcdoc = content;
        }
    }
  }, 
 2000);
How to programatically remove sandbox attribute from an iframe with javascript
https://stackoverflow.com/questions/16135465/how-to-programatically-remove-sandbox-attribute-from-an-iframe-with-javascript	
Встраивание скриптов	 	
Управление заголовком страницы