Quickstarters
CRUD Samples
Como criar um app CRUD com Solid?
34 min
visão geral neste tutorial, você aprenderá como desenvolver uma aplicação crud completa (criar, ler, atualizar, excluir) usando solidjs usaremos o back4app como nosso serviço de backend, permitindo que você gerencie dados sem esforço este guia o orienta na criação de um projeto back4app, na elaboração de um esquema de dados flexível e na codificação de operações crud dentro de uma aplicação solidjs inicialmente, você configurará um projeto back4app chamado basic crud app solidjs este projeto fornece um ambiente robusto de armazenamento de dados sem esquema você definirá seu modelo de dados criando coleções e campos manualmente ou com a ajuda do agente de ia do back4app em seguida, você gerenciará seus dados de backend usando o amigável aplicativo admin do back4app finalmente, você integrará sua aplicação solidjs com o back4app através do sdk javascript do parse (ou via apis rest/graphql conforme necessário) enquanto impõe controles de acesso seguros ao final deste tutorial, você terá uma aplicação solidjs pronta para produção que realiza funções crud essenciais, juntamente com autenticação de usuário segura e gerenciamento de dados o que você aprenderá como criar um aplicativo crud baseado em solidjs com um backend moderno e sem código melhores práticas para projetar um backend escalável e conectá lo ao seu aplicativo solidjs como navegar no aplicativo admin do back4app para operações de dados simplificadas estratégias de implantação, incluindo a containerização com docker, para lançar seu aplicativo solidjs sem problemas pré requisitos antes de começar, certifique se de que você tem uma conta no back4app com um projeto ativo precisa de ajuda? visite introdução ao back4app https //www back4app com/docs/get started/new parse app um ambiente de desenvolvimento configurado para solidjs recomendamos o uso do visual studio code ou qualquer editor preferido, juntamente com o node js (v14 ou superior) conhecimento básico de solidjs, javascript moderno e apis restful reveja a documentação do solidjs https //www solidjs com/docs se necessário passo 1 – inicialização do projeto configurando seu projeto back4app faça login na sua conta back4app clique no botão “novo app” no seu painel nomeie seu projeto basic crud app solidjs e siga as instruções para completar a configuração criar novo projeto após criar seu projeto, ele aparecerá no seu painel, estabelecendo a base para seu backend passo 2 – elaborando seu esquema de dados projetando a estrutura de dados para este aplicativo crud, você configurará várias coleções em seu projeto back4app abaixo estão exemplos das principais coleções e campos necessários 1\ coleção itens esta coleção armazena informações sobre cada item campo tipo propósito id objectid identificador único gerado automaticamente título string nome do item descrição string descrição breve do item criadoem data timestamp quando o item foi adicionado atualizadoem data timestamp da última atualização 2\ coleta usuários esta coleção gerencia credenciais de usuário e dados de autenticação campo tipo propósito id objectid identificador único gerado automaticamente nome de usuário string identificador único do usuário email string endereço de e mail único hashdasenha string senha criptografada para acesso seguro criadoem data timestamp de criação da conta atualizadoem data carimbo de data/hora para a última atualização da conta você pode criar essas coleções e adicionar campos através do painel do back4app criar nova classe para adicionar um novo campo, escolha o tipo de dado apropriado, defina o nome do campo, atribua um valor padrão se necessário e marque como obrigatório se necessário criar coluna usando o assistente de ia do back4app para criação de esquema o assistente de ia integrado do back4app pode criar automaticamente seu esquema de dados com base em suas instruções, economizando tempo e garantindo consistência como usar o assistente de ia abra o assistente de ia acesse o através das configurações do seu projeto no painel do back4app detalhe seu modelo de dados insira uma descrição detalhada das coleções e campos necessários confirme a configuração revise o esquema sugerido e aprove para finalizar a configuração exemplo de prompt create two collections in my back4app project 1\) collection items \ fields \ id objectid (auto generated) \ title string \ description string \ createdat date (auto generated) \ updatedat date (auto updated) 2\) collection users \ fields \ id objectid (auto generated) \ username string (unique) \ email string (unique) \ passwordhash string \ createdat date (auto generated) \ updatedat date (auto updated) este método impulsionado por ia simplifica seu processo de criação de esquema, garantindo um modelo de dados otimizado passo 3 – ativando o painel de administração e gerenciando operações de dados introdução ao painel de administração o painel de administração do back4app fornece uma interface sem código para gerenciamento eficiente do backend seus recursos de arrastar e soltar facilitam a execução de tarefas crud, como adicionar, visualizar, atualizar e excluir registros habilitando o painel de administração vá para o menu “mais” no seu painel do back4app selecione “admin app” e clique “habilitar admin app ” configure suas credenciais de administrador criando uma conta de administrador inicial isso também estabelecerá funções necessárias (como b4aadminuser ) e coleções do sistema habilitar admin app após a ativação, faça login no painel de administração para gerenciar os dados do seu aplicativo painel do app admin gerenciando operações crud no painel de administração dentro do painel, você pode adicionar registros use o recurso “adicionar registro” em qualquer coleção (por exemplo, itens) para inserir novos dados visualizar/editar registros clique em uma entrada para inspecionar ou modificar seus detalhes excluir registros remova entradas obsoletas ou indesejadas esta interface simplifica a gestão de dados, oferecendo uma experiência eficiente e intuitiva passo 4 – conectando sua aplicação solidjs com back4app com o backend em funcionamento, o próximo passo é vincular sua aplicação solidjs ao back4app opção a usando o sdk javascript parse instale o sdk javascript do parse execute o seguinte comando no diretório do seu projeto npm install parse configure o parse em seu aplicativo crie um arquivo de configuração (por exemplo, parseconfig js ) // parseconfig js import parse from 'parse'; parse initialize("your application id", "your javascript key"); parse serverurl = 'https //parseapi back4app com'; export default parse; 3\ implement crud operations in solidjs here’s an example solidjs service for managing items ```javascript // itemsservice js import parse from ' /parseconfig'; export const fetchitems = async () => { try { const items = parse object extend("items"); const query = new parse query(items); const results = await query find(); return results; } catch (error) { console error("error retrieving items ", error); } }; export const additem = async (title, description) => { const items = parse object extend("items"); const item = new items(); item set("title", title); item set("description", description); try { await item save(); console log("item added successfully "); } catch (error) { console error("error adding item ", error); } }; export const updateitem = async (objectid, newtitle, newdescription) => { const items = parse object extend("items"); const query = new parse query(items); try { const item = await query get(objectid); item set("title", newtitle); item set("description", newdescription); await item save(); console log("item updated successfully "); } catch (error) { console error("error updating item ", error); } }; export const deleteitem = async (objectid) => { const items = parse object extend("items"); const query = new parse query(items); try { const item = await query get(objectid); await item destroy(); console log("item deleted successfully "); } catch (error) { console error("error deleting item ", error); } }; opção b utilizando apis rest ou graphql se você preferir não usar o parse sdk, pode executar operações crud via rest por exemplo, aqui está como buscar itens usando a api rest export const fetchitemsrest = async () => { try { const response = await fetch("https //parseapi back4app com/classes/items", { method "get", headers { "x parse application id" "your application id", "x parse rest api key" "your rest api key", }, }); const data = await response json(); return data results; } catch (error) { console error("error fetching items via rest ", error); } }; integre essas chamadas de api em seus componentes solidjs conforme necessário passo 5 – melhorando a segurança do backend configurando listas de controle de acesso (acls) proteja seus dados configurando acls para cada objeto por exemplo, para restringir um item para que apenas seu proprietário possa acessá lo import parse from ' /parseconfig'; export const addprivateitem = async (title, description, owner) => { const items = parse object extend("items"); const item = new items(); item set("title", title); item set("description", description); const acl = new parse acl(); acl setreadaccess(owner, true); acl setwriteaccess(owner, true); acl setpublicreadaccess(false); acl setpublicwriteaccess(false); item setacl(acl); try { await item save(); console log("private item added "); } catch (error) { console error("error saving private item ", error); } }; configurando permissões em nível de classe (clps) configure clps no seu painel do back4app para impor restrições de acesso padrão, garantindo que apenas usuários autorizados possam interagir com certas coleções passo 6 – implementando a autenticação de usuário gerenciando contas de usuário o back4app usa a coleção de usuários do parse embutida para autenticação no seu aplicativo solidjs, gerencie o registro e o login de usuários da seguinte forma import parse from ' /parseconfig'; export const registeruser = async (username, password, email) => { const user = new parse user(); user set("username", username); user set("password", password); user set("email", email); try { await user signup(); console log("user registered successfully!"); } catch (error) { console error("registration error ", error); } }; export const loginuser = async (username, password) => { try { const user = await parse user login(username, password); console log("logged in as ", user get("username")); } catch (error) { console error("login error ", error); } }; uma estratégia semelhante pode ser adotada para gerenciamento de sessão, redefinições de senha e outros recursos de autenticação passo 7 – implantando sua aplicação solidjs back4app simplifica o processo de implantação você pode implantar sua aplicação solidjs através de vários métodos, incluindo docker 7 1 preparando sua aplicação construa sua aplicação use seu gerenciador de pacotes para compilar seu aplicativo solidjs por exemplo npm run build verifique a saída da compilação certifique se de que a pasta de compilação contém todos os arquivos necessários 7 2 organizando a estrutura do seu projeto uma estrutura de projeto típica pode parecer basic crud app solidjs/ \| public/ \| | index html \| src/ \| | components/ \| | | app jsx \| | services/ \| | | parseconfig js \| | | itemsservice js \| | | authservice js \| | index jsx \| package json \| readme md 7 3 dockerizando sua aplicação se você deseja containerizar seu aplicativo, crie um dockerfile na raiz do projeto \# use a lightweight node image from node 16 alpine \# set the working directory workdir /app \# copy package files and install dependencies copy package json package lock json / run npm install \# copy the rest of the application code copy \# build the application run npm run build \# expose the port (adjust if needed) expose 3000 \# serve the built application cmd \["npx", "serve", "build"] 7 4 implantando com o back4app web deployment conecte seu repositório git certifique se de que seu projeto solidjs esteja hospedado no github configure a implantação no seu painel do back4app, escolha web deployment , vincule seu repositório (por exemplo, basic crud app solidjs ) e selecione o branch apropriado defina os comandos de construção defina o comando de construção (por exemplo, npm run build ) e especifique o diretório de saída implante seu aplicativo clique em implantar e monitore os logs até que seu aplicativo esteja ao vivo passo 8 – considerações finais e melhorias futuras ótimo trabalho! você criou com sucesso um aplicativo crud solidjs integrado ao back4app você configurou um projeto chamado basic crud app solidjs , definiu suas coleções de itens e usuários, e gerenciou dados através do painel de administração do back4app além disso, você conectou seu aplicativo solidjs usando o sdk javascript parse (ou rest/graphql) e aplicou medidas de segurança sólidas próximos passos expanda o aplicativo adicione recursos avançados como filtros de pesquisa, visualizações detalhadas de itens ou atualizações de dados em tempo real aprimore o backend experimente com funções em nuvem, integrações de api de terceiros ou gerenciamento de acesso baseado em funções saiba mais mergulhe na documentação do back4app https //www back4app com/docs e tutoriais adicionais do solidjs para refinar ainda mais seu aplicativo feliz codificação e boa sorte com seu projeto crud solidjs!