Quickstarters
CRUD Samples
Como criar um app CRUD com Nuxt.js?
33 min
visão geral neste guia, você descobrirá como construir uma aplicação crud (criar, ler, atualizar, excluir) totalmente operacional usando nuxt js usaremos o back4app como nosso serviço de backend para gerenciar o armazenamento e a gestão de dados com facilidade este guia cobre funções essenciais de crud, detalhando como configurar um projeto back4app, criar um modelo de dados versátil e integrar operações crud com sua aplicação nuxt js inicialmente, você configurará um projeto back4app chamado basic crud app nuxt que oferece um poderoso ambiente de armazenamento de dados nosql você definirá suas estruturas de dados estabelecendo classes e campos manualmente ou através do agente de ia inteligente do back4app em seguida, você gerenciará seu backend usando o back4app admin app—uma interface amigável de arrastar e soltar para operações de dados eficientes finalmente, você conectará sua aplicação nuxt js ao back4app usando chamadas de api rest para realizar operações crud seguras ao final deste guia, você terá criado uma aplicação nuxt js pronta para produção capaz de lidar com operações crud básicas, juntamente com autenticação de usuário segura e gestão de dados pontos principais aprenda como construir uma aplicação crud nuxt js com um backend de alto desempenho entenda o processo de projetar um backend escalável e vinculá lo ao seu frontend nuxt js explore como o admin app do back4app simplifica operações de dados como criar, ler, atualizar e excluir obtenha insights sobre métodos de implantação, incluindo a containerização docker para um lançamento de produção sem costura pré requisitos antes de começar, certifique se de que você tem uma conta back4app com um projeto recém configurado se você precisar de ajuda, consulte introdução ao back4app https //www back4app com/docs/get started/new parse app um ambiente de desenvolvimento para nuxt js certifique se de que você tenha o node js instalado e configure um ide ou editor de texto de sua escolha conhecimento básico de nuxt js, vue js e apis rest consulte a documentação do nuxt js https //nuxtjs org/docs se você precisar de uma atualização passo 1 – inicialização do projeto configurando um novo projeto back4app faça login na sua conta back4app selecione a opção “novo app” no seu painel nomeie seu projeto basic crud app nuxt e siga as instruções de configuração criar novo projeto após a criação do projeto, ele aparecerá no seu painel, pronto para mais configurações de backend passo 2 – elaborando o modelo de dados estabelecendo suas estruturas de dados para este aplicativo crud, você configurará várias classes (ou coleções) dentro do seu projeto back4app abaixo estão exemplos de classes chave e seus campos necessários para a funcionalidade básica de crud 1\ coleção de itens esta coleção armazena detalhes sobre cada item campo tipo descrição id objectid identificador único gerado pelo sistema título string nome do item descrição string descrição breve do item criadoem data timestamp marcando a criação do item atualizadoem data timestamp marcando a última atualização 2\ coleção de usuários esta coleção gerencia os detalhes do usuário e as informações de autenticação campo tipo descrição id objectid identificador único gerado automaticamente nome de usuário string nome de usuário único para o usuário email string endereço de e mail único do usuário hashdasenha string senha hash para autenticação segura criadoem data timestamp de criação da conta atualizadoem data carimbo de data/hora para modificações na conta você pode definir essas coleções e campos manualmente no painel do back4app criar nova classe você adiciona campos escolhendo o tipo de dado apropriado, nomeando o campo, definindo opcionalmente um valor padrão e especificando se o campo é obrigatório criar coluna utilizando o agente de ia do back4app para geração de esquema o agente de ia do back4app é uma ferramenta útil dentro do seu painel que pode construir automaticamente seu esquema a partir de uma descrição fornecida este recurso acelera o processo de configuração e garante que seu modelo de dados esteja otimizado para operações crud como usar o agente de ia abra o agente de ia acesse o nas configurações do seu projeto no painel do back4app descreva seu esquema forneça um prompt detalhado descrevendo as classes e campos que você precisa revise e confirme o agente de ia gerará uma proposta de esquema revise a e confirme para aplicar as alterações exemplo de prompt create the following 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) esse recurso inteligente economiza tempo e garante que sua estrutura de dados esteja configurada de forma consistente para operações crud otimizadas passo 3 – habilitando o app admin e gerenciando operações crud visão geral do app admin o app admin do back4app fornece uma interface sem código para gerenciamento de dados de backend de forma fluida seus recursos de arrastar e soltar facilitam a realização de operações crud, como adicionar, editar, visualizar e excluir registros ativando o app admin vá para o menu “mais” no seu painel do back4app escolha “app admin” e clique em “habilitar app admin ” configure sua conta de administrador criando credenciais iniciais este passo também criará funções de sistema como b4aadminuser e configurará coleções de sistema essenciais habilitar app admin uma vez habilitado, faça login no app admin para gerenciar os dados da sua aplicação sem esforço painel do aplicativo admin usando o aplicativo admin para operações crud dentro do aplicativo admin, você pode adicionar novas entradas utilize o botão “adicionar registro” em uma coleção (como itens) para inserir dados visualizar e editar clique em qualquer registro para inspecionar seus detalhes ou fazer modificações excluir entradas remova registros que não são mais necessários esta interface intuitiva simplifica a gestão de dados para seu aplicativo passo 4 – conectando sua aplicação nuxt js ao back4app com seu backend em funcionamento, a próxima tarefa é integrar seu aplicativo nuxt js com o back4app usando chamadas de api rest como o sdk do parse não é comumente usado com nuxt js, você realizará operações crud usando chamadas de api rest configurando solicitações de api no nuxt js instale o axios se ainda não estiver instalado, adicione o axios ao seu projeto nuxt js npm install @nuxtjs/axios configure o módulo axios no seu nuxt config js , inclua o módulo axios e configure a configuração básica export default { modules \['@nuxtjs/axios'], axios { baseurl 'https //parseapi back4app com' } } executando operações crud crie um serviço (por exemplo, services/items js ) para lidar com chamadas de api abaixo está um exemplo de como você pode buscar, criar, atualizar e deletar itens // services/items js export default { async fetchitems() { try { const response = await this $axios $get('/classes/items', { headers { 'x parse application id' 'your application id', 'x parse rest api key' 'your rest api key' } }); return response results; } catch (error) { console error('erro ao buscar itens ', error); return \[]; } }, async additem(title, description) { try { const response = await this $axios $post('/classes/items', { title, description }, { headers { 'x parse application id' 'your application id', 'x parse rest api key' 'your rest api key' } }); return response; } catch (error) { console error('erro ao criar item ', error); } }, async updateitem(objectid, newtitle, newdescription) { try { const response = await this $axios $put(`/classes/items/${objectid}`, { title newtitle, description newdescription }, { headers { 'x parse application id' 'your application id', 'x parse rest api key' 'your rest api key' } }); return response; } catch (error) { console error('erro ao atualizar item ', error); } }, async removeitem(objectid) { try { const response = await this $axios $delete(`/classes/items/${objectid}`, { headers { 'x parse application id' 'your application id', 'x parse rest api key' 'your rest api key' } }); return response; } catch (error) { console error('erro ao deletar item ', error); } } } integre esses métodos de api em suas páginas ou componentes nuxt js para habilitar a funcionalidade completa de crud passo 5 – aumentando a segurança implementando listas de controle de acesso (acls) proteja seus dados configurando acls para objetos individuais por exemplo, você pode restringir um item para que apenas seu criador possa visualizá lo ou modificá lo async function createprivateitem(title, description, userid) { try { const acl = { " " { "read" false, "write" false }, \[userid] { "read" true, "write" true } }; const response = await this $axios $post('/classes/items', { title, description, acl acl }, { headers { 'x parse application id' 'your application id', 'x parse rest api key' 'your rest api key' } }); console log('private item created ', response); } catch (error) { console error('error creating private item ', error); } } configurando permissões em nível de classe (clps) no seu painel do back4app, configure clps para impor políticas de acesso padrão, garantindo que apenas usuários autenticados possam interagir com coleções específicas passo 6 – implementando autenticação de usuário configurando registro e login de usuário o back4app utiliza uma coleção de usuários embutida para gerenciar autenticação em seu aplicativo nuxt js, implemente registro e login usando chamadas de api rest exemplo registro e login de usuário export default { async registeruser(username, password, email) { try { const response = await this $axios $post('/users', { username, password, email }, { headers { 'x parse application id' 'your application id', 'x parse rest api key' 'your rest api key' } }); console log('user registered ', response); return response; } catch (error) { console error('registration error ', error); } }, async loginuser(username, password) { try { const response = await this $axios $get('/login', { params { username, password }, headers { 'x parse application id' 'your application id', 'x parse rest api key' 'your rest api key' } }); console log('user logged in ', response); return response; } catch (error) { console error('login error ', error); } } } essa abordagem suporta gerenciamento de sessão, recuperação de senha e recursos adicionais de autenticação passo 7 – implantando sua aplicação nuxt js back4app simplifica o processo de implantação você pode implantar seu aplicativo nuxt js usando vários métodos, incluindo a containerização com docker 7 1 construindo seu projeto nuxt js construa a aplicação execute o seguinte comando para gerar a build de produção npm run build inicie a aplicação teste sua build de produção localmente usando npm run start 7 2 organizando a estrutura do seu projeto uma estrutura típica de projeto nuxt js pode parecer com basic crud app nuxt/ \| assets/ \| components/ \| layouts/ \| pages/ \| plugins/ \| services/ \| | items js \| | auth js \| static/ \| nuxt config js \| package json \| dockerfile 7 3 dockerizando seu app nuxt js se você prefere a containerização, inclua um dockerfile na raiz do seu projeto \# use a node js image as the base from node 16 alpine \# set working directory workdir /app \# copy package files and install dependencies copy package json / run npm install \# copy the rest of the application copy \# build the application run npm run build \# expose the port (adjust if necessary) expose 3000 \# start the application cmd \["npm", "run", "start"] 7 4 implantação via back4app web deployment conecte seu repositório certifique se de que seu projeto nuxt js esteja hospedado no github configure a implantação no seu painel do back4app, navegue até a web deployment seção, vincule seu repositório (por exemplo, basic crud app nuxt ), e selecione o branch apropriado defina instruções de construção defina o comando de construção (como npm run build ) e especifique o diretório de saída implantar clique em implantar e siga os logs até que sua aplicação esteja ao vivo passo 8 – conclusão e próximos passos ótimo trabalho! você agora construiu uma aplicação crud em nuxt js integrada com o back4app você criou um projeto chamado basic crud app nuxt , projetou coleções para itens e usuários, e gerenciou seus dados através do back4app admin app além disso, você conectou sua aplicação nuxt js através de chamadas de api rest e implementou medidas de segurança robustas o que vem a seguir expansão de funcionalidades considere adicionar funcionalidades como filtros de busca avançados, visualizações detalhadas de itens ou atualizações em tempo real melhorias no backend considere funções em nuvem, integrações com apis externas ou permissões baseadas em funções aprendizado adicional explore a documentação do back4app https //www back4app com/docs e guias adicionais para otimizar ainda mais sua aplicação feliz codificação e aproveite a construção com nuxt js e back4app!