Langage cristal
Kemal routing redirigeant un sous-arbre
Cet extrait de code vous montre comment rediriger un sous-arbre entier et supprimer la première partie du sous-arbre. Cela peut s'avérer utile, par exemple, lorsque vous avez des liens externes faisant référence à différentes langues (par exemple, /de /fr /it) et à des chemins de contenu dans ces liens, et que vous voulez servir le tout à partir des mêmes points d'extrémité. Crystal Lang...
Weiterlesencode d'erreur 422 de l'API de mailerlite pour le point de terminaison des abonnés
Aujourd'hui, je mettais en place l'interface entre PiCockpit.com et l'API Mailerlite (que nous utilisons pour notre logiciel de newsletter). https://api.mailerlite.com/api/v2/subscribers J'ai obtenu le message d'erreur suivant : La requête POST retournait le code d'état 422. Malheureusement, il existe peu de documentation à ce sujet sur Mailerlite. Mon implémentation était correcte (c'est Crystal Lang d'ailleurs) :...
WeiterlesenTraitement de NIL dans JSON::Any en Crystal Lang
L'un des défis du développement avec Crystal est qu'il ne pardonne pas autant les types de données que, par exemple, Python ou Ruby. nil vous occupera. Le message d'erreur suivant : cast from Nil to String failed, at /usr/share/crystal/src/json/any.cr:220:5:220 peut être résolu par : # cast to string, THEN check if it is nil if...
WeiterlesenComment utiliser les routes "catch all" avec Kemal ?
Pour une application Vue.js à page unique - au moins sur une URL SUB de notre page - nous voulons un catch all sur notre serveur, qui rendra toujours le même modèle / sortie HTML au navigateur. Kemal est basé en interne sur Radix pour le routage : https://github.com/luislavena/radix Radix a un caractère Catch All / Glob :...
WeiterlesenFaire fonctionner les requêtes POST avec Axios, Kemal (crystal lang), vue.js
Dans picockpit.com, j'utilise des requêtes AJAX pour communiquer avec le backend pour les opérations de mise à jour. Par exemple, si vous voulez changer le nom de ce Pi, vous devez sélectionner : qui affiche un formulaire en ligne : comment afficher ce formulaire en ligne avec vue.js n'est pas le sujet de cet article (même si c'est très intéressant !) Cliquer sur...
Weiterlesenmongo_orm Exception : missing bson key : publish_acl (Exception)
Lorsque vous étendez vos définitions de champs dans les classes de documents mongo_orm, notamment avec des documents intégrés, vous pouvez rencontrer l'erreur d'exécution suivante ( !): Exception : missing bson key : (Exception) Ce n'est pas une erreur dans votre code - votre code se lève, parce que la structure de la base de données n'est pas comme il s'attend à ce qu'elle soit ....
Weiterlesenmongo_orm nom personnalisé pour la collection
mongo_orm déterminera automatiquement le nom de votre collection en utilisant le nom du module et de la classe, et en ajoutant un "s". Dans les cas où vous voulez nommer votre collection, vous pouvez simplement faire ceci : class PapiTest < Mongo::ORM::Document collection_name "Buster" field test : String end get "/" do pt = PapiTest.new pt.test = "Je veux...
WeiterlesenInstructions pour ajouter un utilisateur à une base de données mongo pour mongo_orm
Vous ne voulez pas que votre application web accède à la base de données en utilisant l'utilisateur administrateur de la base de données. De plus, vous voulez qu'elle n'accède qu'à une seule base de données spécifique - peut-être avez-vous d'autres bases de données dans votre instance mongo. Pré-requis : mongo_orm attend la configuration de la base de données comme variables d'environnement ou comme un fichier config/database.yml dans votre projet. Le fichier config/database.yml...
WeiterlesenConstruire une expérience d'édition en ligne persistante avec Crystal, MongoDB (datanoise / sam0x17)
Comme la documentation est encore peu abondante, j'aimerais en ajouter. Voici ce que je suis en train de construire actuellement : Les champs individuels vont être modifiables avec un éditeur en ligne, qui sera automatiquement sauvegardé dans le backend - pas besoin de recharger la page entière. Le but de l'ensemble est un backend pour mon...
Weiterlesenkemal-session ne persiste pas les données
https://github.com/kemalcr/kemal-session Analysez ce qui se passe avec votre cookie de session. Dans mon cas, le cookie de session a été réinitialisé chaque fois que j'ai voulu me connecter. J'ai réalisé que mon idée de nettoyer l'ancienne session en tant que première déclaration après une connexion réussie, avant de configurer la nouvelle session, n'est pas une bonne idée. Je soupçonne que le...
Weiterlesen