Posts Tagged Freego
preview per Freego
Da quando uso Typo per il blog, mi sono abituato alla preview: quando sto inserendo un articolo, questo viene visualizzato “al volo” così come dovrebbe apparire nel blog.
Ho pensato, quindi, di aggiungerlo a Freego, che essendo scritto in Ruby on Rails mi facilita il “porting” di questa feature. Tra l’altro su Freego mi torna utile: le news che inserisco li’, infatti, sono spesso piene di link e non ci si accorge di errori sull’html se non visualizzando la news già salvata.
Aggiungere la preview di una news (o qualsiasi altra cosa simile) è stato molto semplice.
Nella view news/new.rhtml ho aggiunto (partendo dallo scaffold):
<%= javascript_include_tag :defaults %>
Il start_form_tag ora ha un id, per poterlo identificare:
<%= start_form_tag ({:action => 'create'}, :id => 'form_edit_news') %>
<%= render :partial => 'form' %>
<%= submit_tag "Invia" %>
<%= end_form_tag %>
Poi ho aggiunto una chiamata AJAX:
<%= observe_form "form_edit_news",
:frequency => 3.0,
:update => 'ajaxWrapper',
:loading_text => "Retrieving data...",
:complete => "Element.hide('spinner')",
:before => " Element.show('spinner')",
:url => {:action=>'preview',
nly_path => false} %>
Questa chiamata controlla modifiche al form per l’editing della news, ogni 3.0 secondi, e aggiorna l’elemento ‘ajaxWrapper’, chiamando l’azione ‘preview’. Quello che segue è l’elemento ‘ajaxWrapper’, che tramite un partial rende la preview della news.
<div id='ajaxWrapper'> <%= render :partial=>'preview',bject => @new_news, :layout => false %> </div>
Piuttosto banale, eh? Qui ho descritto solo le parti fondamentali; se qualcuno vuole proprio vedere il codice intero, ricordo che Freego è GPL.
mod_rewrite per Freego
Posted by paci in Freego, Prosa, Rails, Software Libero on April 1, 2006
Il vecchio codice di Freego rispondeva alle chiamate del tipo:
/news.php?show=12
il che visualizzava la news numero 12.
Il nuovo codice basato su Ruby On Rails riproduce la stessa azione con questa chiamata:
/news/show/12
C’è poca differenza e dato che molti accedono da fuori con i link vecchi, ho pensato di mettere un banale RewriteRule su apache per reinderizzare le URL. Al solito, le cose banali non mi riescono e ci ho perso una mattinata.
Le regole che ho aggiunto sono queste:
RewriteCond %{QUERY_STRING} ^show=([^&]+)$
RewriteRule ^/news.php /news/show/%1? [R]
RewriteRule ^/articles.php /articles/show/%1? [R]
RewriteRule ^/summary.php /summaries/show/%1? [R]
Quello che continuavo a sbagliare è il fatto che inizialmente non pensavo di concentrarmi sulla QUERY_STRING e secondo, che se non si usa il carattere ‘?’ alla fine della RewriteRule, la QUERY_STRING viene appiccipata alla fine nuovamente, creando una URL del tipo:
/news/show/12?show=12
che funzionava lo stesso, ma non era corretta.
Freego su Ruby On Rails
Posted by paci in Freego, Prosa, Rails, Software Libero on April 1, 2006
Freego è online da oggi, con la nuova versione software riscritta con Ruby On Rails.
Mi manca di sistemare diverse cose qui e la’, ma il più dovrebbe essere fatto.


Recent Comments