Logo

dev-resources.site

for different kinds of informations.

Explorando o AppSmith com uma REST API

Published at
2/5/2024
Categories
tutorial
ledscommunity
appsmith
Author
bccaxias
Categories
3 categories in total
tutorial
open
ledscommunity
open
appsmith
open
Author
8 person written this
bccaxias
open
Explorando o AppSmith com uma REST API

Introdução

Este artigo tem o objetivo de detalhar algumas partes da manipulação de componentes do AppSmith que fazem uso de uma REST API e de JS, proporcionando um melhor entendimento dessas funcionalidades. Embora a ferramenta AppSmith já esteja bem documentada no site oficial, é possível identificar algumas lacunas e pontos que não foram suficientemente detalhados. Assim, este documento surge como uma maneira de preencher essas lacunas.
Além disso, é pressuposto que uma API (pronta e funcional) será utilizada no projeto, sendo este o foco principal.

1. Criando Um Novo Projeto

Criar um novo projeto é relativamente simples, apenas clicando no botão

Image description

Um projeto pode ser importado também, caso você já possua alguma parte pronta de outro projeto AppSmith.

2. Utilizando APIs

2.1. Configurando DataSource

Antes de realizarmos as queries da API devemos configurar o DataSource nas opções do AppSmith.

Configurando DataSource

Selecione para criar um novo DataSource e selecione RestAPI para utilizar uma API já criada.

Configurando DataSource 2

A tela que aparecerá será uma de geração de query:

Geração de query

Caso queira somente realizar uma query em uma API pública basta inserir o link no campo de url, mas caso queira salvar um DataSource que será utilizado constantemente durante o projeto siga os seguintes passos:

Selecione a opção de Authentication

Image description

E após selecione o botão central de ‘Save as DataSource’

Image description

Na tela de datasource preencha os dados necessários para a API. A URL inserida deve ser a URL base da API e não a da query que deseja ser feita (ex. uma query http://localhost:1337/api/pessoas tem como o endereço base da API http://localhost:1337/).

Se a API necessitar de algum tipo de autenticação, essa mesma pode ser realizada pela última opção de Authentication.

No caso do uso conjunto com o Strapi é necessário uma autenticação por ‘Bearer Token’, ao selecionar essa opção uma nova caixa de texto aparecerá para inserir o token de autenticação do Strapi (para adquirir esse token verifique a documentação do Strapi)

Image description

Após salvar o DataSource é possível realizar queries de forma mais simples, inserindo somente as rotas de navegação e mantendo a URL base, como no exemplo abaixo utilizando a rota ‘/api/pessoas/’

Image description

2.2. Utilizando APIs em Componentes

Ao se criar um componente como uma tabela é demonstrada a opção de conexão para obtenção de dados.

Image description

Ao clicar no botão tem-se novamente a opção de realizar uma query, mas desta vez será utilizado como base o DataSource já cadastrado anteriormente.

Image description

A tela de início não possuirá nada na URL, mas ao clicar no DataSource salvo na aba de Datasources o campo irá se auto preencher com a URL base e com isso basta complementar com a rota desejada.
A partir disto é possível testar a resposta da API clicando em ‘RUN’ e vendo o resultado da query.

Image description

2.3. Utilizando APIs sem Componentes

Queries também podem ser realizadas sem estarem vinculadas a um componente.

Image description

Selecionando a opção ‘Explorer’ no menu lateral e clicando no simbolo ‘+’ ao lado de ‘Queries/JS’ é possível criar uma query sem estar vinculada a um componente.

3. Utilizando componentes

3.1. Tabelas

Ao se criar uma tabela e um datasource for escolhido a tabela gerará uma coluna para cada tipo de dado fornecido.

Image description

Por meio das configurações presentes no menu lateral direito é possível definir o datasource e realizar configurações individuais para cada coluna, não só mudando a visibilidade das mesmas mas também a formatação dos dados presentes em cada.

Image description

Além das colunas geradas pelo datasource é possível também serem criadas colunas extras com nomes, símbolos e opções configuráveis, como as colunas de ‘Apagar’ e ‘Mais Detalhes’ presentes no exemplo.

3.2. Dropdowns

O menu dropdown ao ser adicionado já possui um dataset básico de exemplo. Sendo assim, deve-se altera-lo caso seja desejado utilizar dados do Datasource.

Image description

É importante sempre definir a ‘Label Key’ e a ‘Value Key’ de forma correta, sendo a ‘Label Key’ o campo que será utilizado para aparecer na listagem do dropdown e o ‘Value Key’ o valor do campo (ex. O objeto coordenador pode ter o nome ‘Bruno’ e o id ‘1’ e ao enviar a informação desse objeto esse id deve ser passado então ‘Bruno’ seria o ‘Label Key’ e o id seria o ‘Value Key’)

3.3. Date Pickers

O date picker não necessita de muitas alterações mas é importante verificar se o formato de data que é enviado é similar ao requisitado pela API.

Image description

O date format deve estar de acordo com o formato utilizado pela API (ex. Se a API requisitar a data em formato yyyy/mm/dd o date picker deve também ser configurado para este date format)

4. Redirecionando telas com informações

Ao selecionar um botão é possível atribuir ao mesmo um ação onClick.

Image description

Para que seja feito um botão de redirecionamento deve ser utilizada a opção ‘Navigate To’, ao seleciona-la é possível ser enviado um parâmetro pela query na aba de ‘Query params’. Utilizando variáveis já presentes no AppSmith é possível por exemplo no caso de uma tabela enviar o id da linha selecionada, nesse caso o id do
objeto que foi selecionado.

Image description

Então em outra tela esse parâmetro enviado, nesse caso o id, pode ser utilizado para realizar uma nova query como no exemplo acima utilizando a variável ‘appsmith.URL.queryParams.key’ para resgatar a key enviada.

5. Usando JS

O uso de javascript também é possível no AppSmith, sendo que a criação de um script ocorre na mesma aba de criação de queries.

Image description

Dessa forma, esses scripts podem ser atribuídos a diversos componentes, como no exemplo abaixo ao ser utilizado para calcular horas de trabalho.

Image description

Conclusão

Em resumo, este documento procurou oferecer assistência na configuração do DataSource e na utilização dos componentes, como tabela, dropdown e date picker, disponibilizados pelo AppSmith. Foram fornecidos insights sobre a configuração e a aplicação adequada desses elementos, incluindo detalhes sobre a configuração de queries e o uso de JS para personalizar campos de componentes. Recomenda-se a exploração da documentação oficial e de outros documentos complementares para uma compreensão mais aprofundada e para atender às demandas específicas de projetos. A combinação do AppSmith com APIs representa uma ferramenta robusta para o desenvolvimento ágil e eficaz de aplicativos.

appsmith Article's
27 articles in total
Favicon
OpenAI Assistants with Structured Outputs
Favicon
Appsmith: Free Open-source Low-Code App Builder
Favicon
Automating Customer Feedback Analysis with Appsmith, Fathom, Slack, and AI
Favicon
Streamline Procurement Approvals with Low-Code Workflow Automation
Favicon
The Only Appsmith Alternative You Need to Know
Favicon
FileMaker API Connector: A Free and Open-Source Starter Solution for Integrating FileMaker with Any API Or Database
Favicon
Explorando o AppSmith com uma REST API
Favicon
Tutorial: Utilizando ferramentas Low Code em Equipe Distribuída
Favicon
Building a CRUD app with Google Sheets
Favicon
15+ Best Customer Service Software Platforms for 2024 and How to Integrate Them
Favicon
The Future of Intent-Driven Design
Favicon
Appsmith vs Retool: Everything You Need To Know
Favicon
Appsmith Innovate Announcements: 1-Click Upgrade, Community Portal, and Templates
Favicon
Are You Still Building Internal Tools From Scratch in 2023?
Favicon
Fostering a Product-First Mindset 🚀
Favicon
How We Fixed Performance With JS Object Variable Mutation
Favicon
Make a Admin Panel in Appsmith
Favicon
Building a contact application with Django and Appsmith
Favicon
Build a Video Approval Tool on Appsmith with Airtable and Notion
Favicon
Build an Equipment Checkout App for the Admin Team at Your Company
Favicon
Appwrite & Appsmith: The perfect open-source duo for your business apps
Favicon
Building a Real-Time Bitcoin Price Tracker in Appsmith
Favicon
How to Deploy Appsmith on private instance using Docker
Favicon
How to Deploy Appsmith on DigitalOcean
Favicon
Build a Cryptocurrency Price Tracker - Appsmith
Favicon
How to work with GraphQL on Appsmith
Favicon
How to Build an Issue Tracker with Appsmith

Featured ones: