Traitement 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...

Weiterlesen

Comment 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 :...

Weiterlesen

mongo_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 ....

Weiterlesen

mongo_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...

Weiterlesen

La portée d'ecr dans crystal : ou comment passer des variables et des objets dans les modèles ECR ?

En tant que débutant dans le langage Crystal, j'ai encore du mal à me faire une idée de certains de ses concepts et à me familiariser avec le codage en Crystal. Lorsque je rencontre des problèmes difficiles, que je résous ou que je commence à comprendre, j'en parle sur mon blog, afin que d'autres puissent en profiter - comme le manque de documentation...

Weiterlesen

Exception : Une citation inattendue à 1:2 (CSV::MalformedCSVError) Crystal

En essayant d'analyser un fichier de paiement Amazon, je suis tombé sur ce problème particulier : Exception : Unexpected quote at 1:2 (CSV::MalformedCSVError) La raison : Amazon Pay encode ses fichiers en UTF-8 avec BOM. Le BOM est un marqueur optionnel (dans les fichiers UTF-8). Vous pouvez le voir avec l'outil xxd par exemple xxd apolish_amazon_2018DecMonthlyTransaction.csv | less Le...

Weiterlesen