Rails
Et bedre utviklingsmiljø for Rails
Den siste uken har jeg snublet over og/eller kommet igang med opp til flere småting som har gjort arbeidsmiljøet mitt for Rails-applikasjoner langt mer behagelig. Sjekk tipsene.
Multi-stage serveroppsett med mod_rails og capistrano
Etter en times leking med mod_rails innså jeg at dette var så genialt som hypen tilsier. Jeg har nå satt opp et multi-stage-miljø med mod_rails og capistrano til produksjonssetting, og tenkte at kanskje også andre ville være interessert i oppsettet.
Lese hele innlegget, på engelsk.
Les hele Multi-stage serveroppsett med mod_rails og capistrano.
Prototyper og properties for Rails
Nylig hadde jeg behov for å kunne konfigurere ActiveRecord-objekter med et system som tillot standardverdier og overstyringer i en slags cascade. Kort tid etter jeg hadde gjort dette leste jeg en artikkel av Steve Yegge som inspirerte meg til en liten refaktorering og samling av koden som en plugin. Resultatet er acts_as_prototype.
Enda litt mer Ruby-templating
Mer alternativ templating for Ruby og Rails: Denne gangen er det snakk om Liquid - et simplere templating-system for Ruby hvis målgruppe er sluttbrukere og "designere".
Validering på skinner
Skjemavalidering på klienten kan gjøre underverker for brukervennligheten av skjemaene dine. Desverre kan det også innføre ikke så hyggelig duplisering av logikk i applikasjonen når (langt på vei) de samme reglene for validering av data gjengis både i domenemodellen og i visningslaget. For dere som bruker Rails er jeg nå igang med en løsning på dette problemet.
Alternativer til Erb igjen
En av de aller første tingene jeg skrev om på cjohansen.no var et alternativ til Erb ("embedded ruby"), DRYML (fra Hobo). I dette innlegget touchet jeg også innom #haml, som jeg nå har oppdaget på nytt.
Bildeopplasting i Rails
Bildeopplasting i Rails er en lek med attachment_fu og andre plugins. Det som ikke er like lekende lett er bildebehandlingsbibliotekene i bunn. Her er noen tips.
Produksjonsmiljø for Rails under Debian Etch
For en tid tilbake satte jeg opp mitt første produksjonsmiljø for Rails på en Debian-maskin fra scratch. Oppskriften er forsåvidt lett, men som alltid dukker det opp noen uforutsette problemer. Følgende er en hinderfri oppskrift for mongrel cluster + Apache 2.2 under Debian Etch.
Enhetstesting av private metoder i Ruby
Enhetstesting av private metoder lar seg ikke gjøre helt uten videre, ettersom de per definisjon ikke er kjørbare utenfor klassen som testes. Takket være Rubys dynamikk er dette null problem med en liten hjelpe-metode.
Fremmednøkler i Rails
Av en eller annen grunn har ikke folkene bak Rails mye til overs for fremmednøkler. Heldigvis finnes det løsninger for oss som syntes at dataintegritet er viktigere enn å være database-agnostisk.
Glemt å rydde etter deg?
Sessionhåndtering i Rails har en "liten" gotcha: den rydder ikke opp etter seg selv. Heldigvis er det ikke noe stort problem å holde orden i sesjonsdata, men det må naturligvis settes opp på forhånd.
Oppdatering: Testdata/Utvikling/Rails
Etter å ha brukt rake-oppgaven som beskrevet i
Testdata under utvikling i Rails samtidig som pågående prosjekt har vokst har jeg støtt på et lite problem med den. Her er fiksen.
Testdata under utvikling i Rails
For å få et riktig bilde av applikasjonen i levende live mens man utvikler er det nødvendig med en viss mengde testdata. Følgende er to måter å "så" data i utviklings-basen.
Rails er en Ghetto
Godt nyttår! 2008 tegner til å bli et spennende år for oss webutviklere. Zed Shaw, mannen bak den Ruby-baserte serveren Mongrel starter ihvertfall relativt friskt med et stort "FUCK YOU" til hele Rails-communityet.
Rails i Subversion
Å putte prosjekter i Subversion (svn) er både praktisk når man er alene, og en nødvendighet når man er flere. Når flere jobber på samme kodebase, eller når man jobber mot samme kodebase på forskjellige plasser kan det fort oppstå noen problemer. Disse problemene er i hovedsak knyttet til to ting; utviklingsmiljøet er forskjellig på forskjellige maskiner, og noen filer ønsker man rett og slett ikke å ha versjonskontroll på.
Er ikke Erb bra nok?
Det er tydeligvis flere enn meg som har Erb templates som sin minste favoritt-del av Rails. Da jeg først satte meg inn i Rails var jeg veldig oppstemt og gira over hvor lett og rent og pent det hele så ut, helt til jeg satt meg inn i malene. Jeg har alltid fått litt mark av “scriptlets”, enten det er jsp scriptlets, en helt vanlig html/php miks eller en eRB template - selv med Rails helpers. Men jeg har vendt meg til det. Så kom jeg over Hobo (takk til Thor Fredrik Eie).
Ruby on Rails i norge
Ved en ren tilfeldighet dumpet jeg borti en norsk Ruby/Rails-gruppe forrige uke. Ser ut til at de er en liten gjeng dedikerte folk som koder Ruby i arbeidstiden, som lærer seg Ruby eller som på et eller annet vis er interesserte i Ruby. Siden jeg også er en kar som er interessert i Ruby og Rails har jeg også meldt meg på. Gutta arrangerer jevnlige møter der de diskuterer Ruby, presenterer løsninger og har kode-workshops.