Wat is jouw favorite 2.0 feature?

Geplaatst door Remco van 't Veer zo, 09 dec 2007 19:36:00 GMT

Het is je vast niet ontgaan dat de Rails 2.0 vrijgegeven is. Hulde aan het core team en lof voor de vele contributors! Maar wat is je favoriete nieuwe feature?

Het is moeilijk kiezen want er is zo verschrikkelijk veel moois bijgekomen! Zijn het sexy migrations? Of misschien de foxy fixtures? De request profiler of de vernieuwde debugger?

Ik zelf vind de cookie store heel erg welkom. Naast de performance boost, ben ik verlost van m’n sessie-opruim-cron-jobs. Maar het mooiste van de cookie store vind ik de HTTP liefde die ik er moeiteloos mee kan uiten.

Over HTTP liefde gesproken; basic authentication door alleen maar een bizar lange methode naam te gebruiken!

Wat is jouw favoriet?

Geplaatst in , , ,  | 4 reacties

Sexy Migrations nu ook in edge!

Geplaatst door Remco van 't Veer zo, 06 mei 2007 08:44:00 GMT

De sexy migrations, zoals bekent uit Hobo, zitten sinds vannacht ook in edge; changeset 6667. Dat is goed nieuws want wie houd er nou niet van sexy! Daarnaast komen er nu zoveel documentatie patches langs dat je je gaat afvragen of er hard gewerkt wordt aan een major release (2.0!) voor RailsConf 2007.

Ik ga m’n adem niet inhouden.. ;)

Update: Ryan heeft meer over sexy migrations.

Geplaatst in ,  | geen reacties

RESTful Rails

Geplaatst door Matthijs Langenberg do, 02 nov 2006 07:18:00 GMT

In de komende release van Rails gaat REST een belangrijke rol spelen, maar wat is REST nu eigenlijk?

REST staat voor REpresentational State Transfer, dit betreft het opvragen en wijzigen van resources waarbij gebruik wordt gemaakt van de vier standaard HTTP request methoden (namelijk: GET, POST, PUT en DELETE). REST is gebaseerd op het feit dat elke HTTP methode een te ondernemen actie op een resource (een ‘model’) vertegenwoordigt. Dit maakt het mogelijk om dezelfde URL voor meerdere acties te gebruiken. Stel dat ik het eerste artikel van een blog zou willen opvragen:
 GET /articles/1 
En nu wil ik hetzelfde artikel verwijderen:
 DELETE /articles/1 
Zoals je ziet blijft de URL hetzelfde en gebruik ik alleen een ander HTTP request. Aangezien requests binnenkomen bij een controller houd dit dus in dat er een mapping plaatsvind van HTTP methode naar controller actie en wel als volgt:
HTTP verb Controller Action CRUD Action
GET show READ
POST create CREATE
PUT update UPDATE
DELETE destroy DESTROY


Lees verder...

Geplaatst in ,  | 4 reacties

Living on the edge

Geplaatst door Matthijs Langenberg ma, 23 okt 2006 11:28:00 GMT

Binnenkort ga ik een serie artikelen schrijven over de nieuwe features die in edge rails, de ontwikkel versie van rails (ook wel trunk genoemd), te vinden zijn. Om jullie daar van mee te kunnen laten genieten vertel ik eerst hoe het mogelijk is om een applicatie in edge rails te laten draaien. De makkelijkste methode is om de meegeleverde rake taken te gebruiken. Door in een bestaande rails applicatie rake rails:freeze:edge uit te voeren wordt er een checkout van de trunk in ‘vendor/rails’ gedaan. Echter de directories en bestanden die gegenereerd zijn toen je rails my_app_name uitvoerde zijn niet bijgewerkt, hier is ook aan gedacht (uit rake --tasks): rake rails:update # Update both configs, scripts and public/javascripts from Rails.
        rails my_edge_app
        cd my_edge_app
        rake rails:freeze:edge
        rake rails:update
Hoewel ik het volste vertrouwen in de meegeleverde rake tasks heb geef ik toch de voorkeur aan een andere aanpak. Als ik nu eerst eens een checkout doe van de trunk versie en daar het ‘rails’ script uit vis, weet ik zeker dat mijn gehele applicatie ‘edge’ is, dit doe je op de volgende manier:
        mkdir -p my_edge_app/vendor
        cd my_edge_app
        svn export http://dev.rubyonrails.org/svn/rails/trunk vendor/rails
        ruby vendor/rails/railties/bin/rails
Wanneer je deze applicatie gaat importeren in subversion is het aan te raden om de vendor/rails map eerst te verwijderen voor de import te doen, hiermee voorkom je namelijk dat je de hele rails trunk meeneemt subversion in. Wanneer je subversion gebruikt is het aan te raden om de rails trunk als externals te gebruiken (dit is dus alleen mogelijk met een project in subversion).
        svn propset svn:externals "rails http://dev.rubyonrails.org/svn/rails/trunk/" vendor
        svn update #Zal de laatste trunk in vendor/rails plaatsen.
Elke keer als svn update wordt uitgevoerd zal vendor/rails ook geupdate worden.

You live on the edge!

Volgens mij maakt het niet uit welke van de twee methoden gebruikt om edge rails te gebruiken, persoonlijk geef ik de voorkeur aan de laatste, maar er zullen ongetwijfeld nog andere methoden zijn. In ieder geval kun je nu gebruik maken van de nieuwste features, waarvan ik RESTful routes en ActiveResource de meest indrukwekkende features vind, hierover later meer.

Geplaatst in ,  | geen reacties