Na semana passada, entrei em contato com a estrutura Sails, construindo um sistema CMS e aprendi alguns dos conceitos do ORM. Nesta semana, começamos a aprofundar a interação de dados em segundo plano e descobrimos que a estrutura de dados da estrutura vinte foi projetada em velas (como nó e categoria). Devo dizer que meu veterano é incrível. Mas a complexidade também aumentou. Minha tarefa no projeto DTree é usar velas para interagir com processos e bancos de dados de negócios. A próxima vez nesta semana é usar velas.
Introdução às velas
Sails é como Ruby on Rails, e também é uma estrutura para simplificar o desenvolvimento da Web. Até onde eu sei, durante esse período, ele herda completamente algumas APIs de Express & Socket.io e usa a linha de água (ORM) para interação unificada de banco de dados, para que as operações do CRUD possam ser concluídas em diferentes ambientes de banco de dados sem modificar diretamente o código; Sincroniza os dados das extremidades frontal e traseira com a estrutura da espinha dorsal e usa o middleware das políticas para verificar com segurança a interação de suas próprias plantas. Ele pode interagir através da API RESTfull sem uma única linha de código na frente e na extremidade traseira.
Socket.io & Express
O front-end aprendeu essas duas coisas no tempo, uma é a Websock Communication e a outra é processar solicitações HTTP. O SAILS não é redesenhado, mas usa essas duas ferramentas para lidar diretamente com essas funções, reduzindo muito os custos de aprendizagem. O Socket.io aciona mensagens, ouve mensagens e executa operações de acordo com o servidor e o cliente.
A cópia do código é a seguinte:
`
// lado do servidor
io.sockets.on ("Connection", function (Sock) {
Sock.emit ("NormalMessage", {a: "C"});
});
//Atendimento ao Cliente
Sock.on ("NormalMessage", function (JSON) {...});
`
A função do Express está nas operações de roteamento, como o app.get ('/login', função (req, res) {});.
Blueprints e backbone de velas
No desenvolvimento da Web, o CRUD é um tipo semelhante de operação, como GET/POST no HTTP e Selecionar/Inserir no banco de dados. A API do Blueprint de Sails e a estrutura de backbone do JS usam uma classe unificada de funções (como FindOne), para que a lógica interna já seja estabelecida quando o programa estabelece o modelo e o controlador correspondente. Por exemplo, o modelo de usuários comumente usado construiu um controlador em velas para passar e armazenar os dados dos usuários. Tudo o que precisamos prestar atenção são as especificações e os processos de negócios dos nomes de arquivos. Também está ok se você deseja substituir (sobrecarregar) o método original. Depois de definirmos a ação e o controlador nas rotas na pasta de configuração, podemos adicionar as funções necessárias ao controlador correspondente.
Linha de água
A API de pacote dependente de velas é usada para interagir com bancos de dados, como Create (), FinDone (), Update (), etc. Como mencionado anteriormente, não precisamos nos preocupar com diferentes ferramentas de banco de dados para chamar esses métodos diretamente de maneira uniforme. Por exemplo, ao inserir dados
A cópia do código é a seguinte:
`
Users.create ({nome de usuário: nome de usuário, senha: senha}). Exec (function (erro, usuário) {
if (erro) {
res.send (500, {Error: "DB Error"});
} outro {
req.session.User = User;
res.send (usuário);
}
`
O sistema padrão é salvar dados no sistema de arquivos local. Se precisarmos escolher MySQL ou MongoDB. Basta modificá -lo no arquivo de configuração e selecionar o adaptador de banco de dados para interagir com os dados.
Políticas
Aplicado ao middleware no controlador, execute antes que a solicitação HTTP seja emitida. O controle de identidade pode ser alcançado, por exemplo, você pode executar apenas as próximas ações se efetuar login.
A cópia do código é a seguinte:
`
if (req.session.user) {
var ação = req.options.action;
if (Action == "Create") {
req.body.UserID = req.session.user.id;
req.body.username = req.session.user.username;
}
próximo();
}outro{
res.send ("Você deve estar conectado", 403);
}
`
próximo
As velas começaram com sucesso, mas ainda precisa trabalhar mais nisso. Somente estabelecendo uma base sólida, podemos atingir necessidades específicas. Portanto, precisamos continuar aprendendo, encontre mais rotinas para aprender as velas em profundidade e também conhecer as limitações dessa estrutura.