Kristal Taal
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...
Weiterlesenmailerlite API foutcode 422 voor abonnees eindpunt
Vandaag was ik de interfacing aan het implementeren tussen PiCockpit.com en de Mailerlite API (die we gebruiken voor onze nieuwsbrief software). https://api.mailerlite.com/api/v2/subscribers Ik kreeg de volgende foutmelding: Het POST verzoek retourneerde 422 als status code. Helaas is er weinig documentatie over dat op Mailerlite. Mijn implementatie was correct (dit is trouwens Crystal Lang):...
WeiterlesenOmgaan 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...
WeiterlesenHoe catch all routes te gebruiken met Kemal
Voor een Vue.js single page applicatie - in ieder geval op een SUB URL van onze pagina - willen we een catch all op onze server, die altijd dezelfde template / HTML output naar de browser zal renderen. Kemal is intern gebaseerd op Radix voor routing: https://github.com/luislavena/radix Radix heeft een Catch All / Glob karakter:...
WeiterlesenPOST verzoeken laten werken met Axios, Kemal (kristal lang), vue.js
In picockpit.com, gebruik ik AJAX verzoeken om te communiceren met de backend voor update operaties. Als je bijvoorbeeld de naam van deze Pi wilt veranderen, selecteer je: wat een inline formulier toont: hoe je dit inline formulier toont met vue.js is niet het punt van deze post (ook al is het erg interessant!) Klikken op...
Weiterlesenmongo_orm Uitzondering: ontbrekende bson sleutel: publish_acl (Uitzondering)
Wanneer u uw velddefinities uitbreidt in de mongo_orm documentklassen, specifiek met ingesloten documenten, kan u de volgende runtime (!) fout tegenkomen: Uitzondering: ontbrekende bson sleutel: (Uitzondering) Dit is geen fout in uw code - uw code verhoogt, omdat de databasestructuur niet is zoals hij verwacht dat het is!..
Weiterlesenmongo_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 ...
WeiterlesenInstructies 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...
WeiterlesenHet bouwen van een persistente in-line editing ervaring met Crystal, MongoDB (datanoise / sam0x17)
Aangezien de documentatie nog schaars is, zou ik er graag wat aan toevoegen. Dit is wat ik momenteel aan het bouwen ben: De individuele velden worden bewerkbaar met een inline editor, die automatisch wordt opgeslagen in de backend - de hele pagina hoeft dus niet opnieuw geladen te worden. Het punt van het geheel is een backend voor mijn...
Weiterlesenkemal-session houdt gegevens niet vast
https://github.com/kemalcr/kemal-session Analyseer wat er gebeurt met je sessie cookie. In mijn geval, werd de session cookie gereset telkens als ik inlogde. Ik realiseerde me, dat mijn idee om de oude sessie op te schonen als eerste statement na succesvol inloggen, alvorens de nieuwe sessie op te zetten, geen goed idee is. Ik vermoed, dat de...
Weiterlesen