Enrutamiento Kemal redirigiendo un subárbol

Este fragmento de código muestra cómo redirigir un subárbol completo y eliminar la primera parte del subárbol. Esto puede resultar útil, por ejemplo, cuando tiene enlaces externos que hacen referencia a diferentes idiomas (por ejemplo, /de /fr /it) y rutas de contenido en ellos, y desea servir todo desde los mismos puntos finales. Crystal Lang...

Weiterlesen

Tratando con NIL en JSON::Any en Crystal Lang

Uno de los retos al desarrollar con Crystal es que no es tan indulgente con los tipos de datos como, por ejemplo, Python o Ruby. nil te mantendrá ocupado. El siguiente mensaje de error: cast from Nil to String failed, at /usr/share/crystal/src/json/any.cr:220:5:220 puede resolverse de la siguiente manera # cast to string, LUEGO comprobar si es nil si...

Weiterlesen

mongo_orm nombre personalizado para la colección

mongo_orm determinará automáticamente el nombre de su colección utilizando el nombre del módulo y de la clase, y añadiendo una "s". En los casos en los que quieras nombrar tu colección, puedes simplemente hacer esto: class PapiTest < Mongo::ORM::Document collection_name "Buster" field test : String end get "/" do pt = PapiTest.new pt.test = "Quiero...

Weiterlesen

Instrucciones para añadir un usuario a una base de datos mongo para mongo_orm

No quieres que tu aplicación web acceda a la base de datos usando tu usuario administrador de la base de datos. Además, quieres que sólo acceda a una base de datos específica - tal vez tienes bases de datos adicionales que se ejecutan en tu instancia de mongo. Requisitos previos: mongo_orm espera la configuración de la base de datos como variables de entorno o como un archivo config/database.yml en tu proyecto. El archivo config/database.yml...

Weiterlesen

Uso de módulos en crystal

A medida que su aplicación crece, le gustaría pasar de un gran archivo .cr a separar su código en archivos más pequeños. Puedes usar require de tu archivo .cr principal para añadir código de otros archivos: require "./tools/*" Esta declaración añadirá código del directorio tools, relativo a su archivo .cr principal. Esto...

Weiterlesen

Instalar Crystal en Docker: cómo añadir el repositorio de Crystal a Docker en el Dockerfile

Dockerfile (extracto) ENV APT_KEY_DONT_WARN_ON_DANGEROUS_USAGE=DontWarn RUN apt-get update && apt-get install -y \ software-properties-common \ build-essential \ libevent-dev \ libssl-dev \ libxml2-dev \ libyaml-dev \ libgmp-dev \ libreadline-dev \ apt-transport-https \ iputils-ping \ git \ aptitude \ nano \ openssh-server \ && apt-key adv -keyserver keys.gnupg.net -recv-keys 09617FD37CC06B54 \N-y add-apt-repository 'deb https://dist.crystal-lang.org/apt crystal...

Weiterlesen

Crystal & Alpine en la Raspberry Pi

Reunir dos tecnologías interesantes: Alpine Linux - una distribución de Linux de pequeño tamaño y orientada a la seguridad Crystal - un lenguaje compilado con una sintaxis agradable (similar a Ruby) en la Raspberry Pi (armhf / ARMv6, que también soportaría la Pi Zero W) no es posible actualmente, a partir del 21.12.2018. No hay (al menos no...

Weiterlesen