Kemal die een subboom omleidt

Dit codefragment toont u hoe u een volledige subboom omleidt en het eerste deel van de subboom verwijdert. Dit kan van pas komen, bijvoorbeeld wanneer je externe links hebt die verwijzen naar verschillende talen (bijv. /de /fr /it) en inhoudspaden daarin, en je wilt alles vanaf dezelfde eindpunten serveren. Crystal Lang...

Weiterlesen

Omgaan met NIL in JSON::Any in Crystal Lang

Een van de uitdagingen bij het ontwikkelen met Crystal is dat het niet zo vergevingsgezind is met betrekking tot datatypes als, laten we zeggen, Python of Ruby. nil zal je bezig houden. De volgende foutmelding: cast from Nil to String failed, in /usr/share/crystal/src/json/any.cr:220:5:220 kan opgelost worden door: # cast naar string, DAN controleren of het nil is als...

Weiterlesen

mongo_orm aangepaste naam voor collectie

mongo_orm zal automatisch de naam voor uw collectie bepalen door gebruik te maken van de Module en Class naam, en een "s" toe te voegen. In gevallen waarin u wilt uw collectie naam, kunt u gewoon dit doen: class PapiTest < Mongo::ORM::Document collection_name "Buster" field test : String end get "/" do pt = PapiTest.new pt.test = "Ik wil ...

Weiterlesen

Instructies voor het toevoegen van een gebruiker aan een mongo database voor mongo_orm

Je wil niet dat je web applicatie toegang krijgt tot de database via je database admin gebruiker. Bovendien wil je dat het slechts toegang heeft tot één specifieke database - misschien heb je extra databases draaien in je mongo instantie. Vereisten: mongo_orm verwacht de database configuratie als omgevingsvariabelen of als een bestand config/database.yml in uw project. De config/database.yml...

Weiterlesen

Modules gebruiken in kristal

Naarmate je applicatie groeit, zou je willen evolueren van één groot .cr bestand naar het scheiden van je code in kleinere bestanden. Je kan require van je hoofd .cr bestand gebruiken om code van andere bestanden toe te voegen: require "./tools/*" Dit statement zal code toevoegen uit de tools directory, relatief aan je hoofd .cr bestand. Dit zal...

Weiterlesen

Crystal installeren op Docker: hoe de Crystal repository toe te voegen aan Docker in het Dockerfile

Dockerfile (uittreksel) 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 \ && add-apt-repository 'deb https://dist.crystal-lang.org/apt crystal...

Weiterlesen

Crystal & Alpine op de Raspberry Pi

Het samenbrengen van twee interessante technologieën: Alpine Linux - een kleinschalige en op beveiliging gerichte Linux-distributie Crystal - een gecompileerde taal met een mooie syntaxis (vergelijkbaar met Ruby) op de Raspberry Pi (armhf / ARMv6, die ook de Pi Zero W zou ondersteunen) is op dit moment, per 21.12.2018, niet mogelijk. Er is geen (althans geen...

Weiterlesen