HELP ME PLEASE: RoR!

Ciao a tutti,
ho iniziato da qualche giorno a scrivere qualche riga di codice con
Ruby.
Dopodichè ho installato Instant Rails, molto simile a EasyPhp.

Ho qualche conoscenza di base PHP/MYSQL, ma non ho proprio capito come
usare RoR.

Qualcuno mi aiuti, non so davvero da dove partire e la documentazione in
giro è avanzata.(potete mettere qualche esempio??)

RoR si inserisce nel codice html?
La pagina index.html su localhost la devo creare io?
In che modo?
E col database?

Sono un neofita, ringrazio davvero chi ha voglia di perdere 10 minuti
con questa banale domanda.

Grazie

On 10/14/06, biancoc_sdc [email protected] wrote:

giro è avanzata.(potete mettere qualche esempio??)


Posted via http://www.ruby-forum.com/.

Eccomi qui :stuck_out_tongue:

Anche se l’iniziativa è partita solo da qualche giorno ti consiglio di
rimanere ben in contatto sul sito http://therubymine.com. Ha grandi
prospettive e affronterà nel breve futuro argomenti molto interessanti ed
utili.
Poi andando più sul ‘Solo Rails’, al momento in italiano ti posso
consigliare http://www.extendi.it/ruby-on-rails/

Ora ti do un consiglio più personale che però ti permetterà di avvicinarti
in modo graduale a Rails, visto che leggere brevi articoli qui e li non
è di
sicuro il modo giusto di partire da zero. Anche se il testo è in inglese,
ti
consiglio una guida base che fornisce solide basi su come rails funzioni

veramente semplice e molto base).
http://www.onlamp.com/pub/a/onlamp/2005/01/20/rails.html
http://www.rails4days.pwp.blueyonder.co.uk/Rails4Days.pdf

Dopo esserti avvicinato a Rails, se ancora sarai interessato (e lo sarai
:P)
ti consiglio i due libri attualmente disponibili in italiano
Sviluppare applicazioni Web con
Railshttp://www.librinformatica.com/trade/productview/4250/12/
Ruby per applicazioni
Webhttp://www.librinformatica.com/trade/productview/4484/497/

Se poi non hai problemi in inglese, ti consiglierei di prendere
Sviluppare
applicazioni Web con
Railshttp://www.librinformatica.com/trade/productview/4250/12/nella
sua versione originale, visto che la traduzione ha qualche errorino
qui e li…

Benvenuto…


Andrea R.

The Ruby Mine è online a http://therubymine.com

The Ruby Mine è un editorial scritto dalla community per la community,
dedicato al consolidamento della cultura rubyista in Italia.

Grazie Andrea,
non pensavo che qualcuno potesse rispondere a domande così stupide…

Detto questo mi farò regalare uo dei libri per Natale.

La cosa che vorrei capire è questa:

ho installato Instant Rail.

Vorrei generare del codice come questo (qui usavo EasyPhp che è simile a
Instant nella filosofia, mi sembra…)

Questa riga è scritta in HTML

<?php echo "Questa seconda riga è scritta in PHP"; ?>

Come si fa? (o meglio puts “Questa seconda riga è scritta in Ruby” dove
la metto nell’html?)…

Spero che un giorno riderò sopra di queste mie domande stupide…

Ancora grazie!

biancoc

prima di tutto al posto di <?php ?> hai <% %> o <%= %< per generare
output

nel tuo controller per esempio scrivi

def index
@x = “Hello world”
end

nella vista scriverai

Questa riga è scritta in HTML

<%= @x %>

questo giusto per farti capire qualche cosina ma rails non è proprio
banale
come il php ci sono un po di cose in più, spero cmq di aver chiarito
almeno
questa, ovviamente hai altri mille modi per generare output, questo è
solo
uno dei tanti, volendo al posto di fare l’ echo della variabile di
istanza(quelle con @ sono var. di istanza, variabili disponibili alla
vista
in breve) può eseguire vero e proprio codice all’ interno dei tag %, per
esempio:

<% puts “Hello World” %> o una cosa del genere.

Per quanto riguarda i libri non prendere per nessun motivo " sviluppare
applicazioni web con rails", ce l’ho ed è vergognoso.

Saluti Andrea

----- Original Message -----
From: “biancoc_sdc” [email protected]
To: [email protected]
Sent: Sunday, October 15, 2006 11:15 AM
Subject: [ruby-it] Re: HELP ME PLEASE: RoR!!!

Vorrei generare del codice come questo (qui usavo EasyPhp che è simile a
Come si fa? (o meglio puts “Questa seconda riga è scritta in Ruby” dove


On 10/15/06, biancoc_sdc [email protected] wrote:

Grazie Andrea,
non pensavo che qualcuno potesse rispondere a domande così stupide…

Ricordati che non esistono domande stupide, ma solo domande :stuck_out_tongue:

Detto questo mi farò regalare uo dei libri per Natale.

Come ha accennato stb, la traduzione in italiano non è proprio buona ed
alcune lamentele le ho sentite, quindi se puoi prendi la versione in
inglese. Il titolo è Agile Web D. with Rails e a dicembre se
vorrai
attendere uscirà la nuova e ricca versione.

La cosa che vorrei capire è questa:

    echo "Questa seconda riga è scritta in PHP";

?>

Come si fa? (o meglio puts “Questa seconda riga è scritta in Ruby” dove
la metto nell’html?)…

Questa riga è scritta in HTML

<= "Questa seconda riga è scritta in PHP" %>

Semplice vero :smiley:


Andrea R.

The Ruby Mine è online a http://therubymine.com

The Ruby Mine è un editorial scritto dalla community per la community,
dedicato al consolidamento della cultura rubyista in Italia.

questo giusto per farti capire qualche cosina ma rails non è proprio
banale
come il php ci sono un po di cose in più

Una piccola nota personale… che vorrei dire senza entrare in polemica
naturalmente.
IMHO Rails è più banale di PHP, soprattutto quando si inizia a creare un
piccola applicazione, ed i punti a favore più evidenti sono:

  • curva di apprendimento del linguaggio che ci sta sotto (Ruby)
  • divisione logica MVC forzata che semplifica moooolto lo sviluppo
  • metodi di accesso ai dati

Credo questi siano alcuni dei punti più visibili che portano Rails a
superare PHP (ma forse sono di parte :P). Se poi si fa il confronto con
altri framework php, magari il divario diminuisce, ma tra Rails e PHP
puro,
non credo ci sia storia su cosa sia meglio.


Andrea R.

The Ruby Mine è online a http://therubymine.com

The Ruby Mine è un editorial scritto dalla community per la community,
dedicato al consolidamento della cultura rubyista in Italia.

Questa riga è scritta in HTML

<= "Questa seconda riga è scritta in PHP" %>

Ops… mi ero dimenticato un %… La scrittura corretta è
<%= “Questa seconda riga è scritta in PHP” %>


Andrea R.

The Ruby Mine è online a http://therubymine.com

The Ruby Mine è un editorial scritto dalla community per la community,
dedicato al consolidamento della cultura rubyista in Italia.

prima di tutto ti posso dire che la manipolazione di un db con Rails è
forse
uno dei punti di forza del framework, diciamo che io son passato a Rails
per
3 cose, la struttura già fatta, la manipolazione semplicissima del db e
la
gestione molto ma moltooooo semplificata di ajax.

per quanto riguarda il tuo problema sinceramente non ne ho idea, pur
avendo
usato easyphp nn ho mai usato instant rails, sviluppo su mac con
locomotive(lì’ equivalente) e su windows sinceramente nn ho avuto alcun
problema a installare direttamente rails.

se non sbaglio tempo fa ho trovato un sito con l’ intero libro
“sviluppare
applicazioni web con rails”(ti ricordo di non comprarlo :stuck_out_tongue: ) in italiano
e
gratuito, li qualche cosa per iniziare la trovi, purtroppo appena
capisci
due cose quel libro ti può servire solo come ferma carte

Saluti Andrea
----- Original Message -----
From: “Guest” [email protected]
To: [email protected]
Sent: Monday, October 16, 2006 4:16 PM
Subject: [ruby-it] Re: Re: HELP ME PLEASE: RoR!!!

<meta http-equiv=“Content-Type” content="text/html;

www)…

Posted via http://www.ruby-forum.com/.


Andrea, vergognandomi come un bambino ti illustro la mia triste
situazione:

Ho installato Instant Rails. Sentro vi e’ la cartella www come in
EasyPhp.

127.0.0.1(localhost) permette di vedere il file index.html contenuto in
www.

vorrei che in tale file venisse scritto: W Ruby!!

Secondo quanto detto basterebbe

<%= “Questa seconda riga e’ scritta in PHP” %> ma localhost visualizza
la pagina bianca.

[ALLEGO CODICE index.html

Instant Rails Help <%= "Questa seconda riga critta in PHP" %>

]

A questo punto sono in crisi…

Cavolo!!!

Seconda cosa:Perche’ RoR non ha la pagina index.html come in EasyPHP?
(hai presente quale? QUella che mostrava tutte le directory contenute in
www)…

Pensare che vorrei arrivare a far intergire RoR con un
database…impossibile.

Grazie

biancoc

On 10/16/06, Guest [email protected] wrote:

Andrea, vergognandomi come un bambino ti illustro la mia triste
situazione:

Ciao biancoc,

non vergognarti, ma prova a seguire le mie istruzioni passo passo, ok?

  1. Lancia InstantRails.exe
  2. Fai click sull’icona con la I in nero a sinistra del pulsante
    “Apache”.
  3. Seleziona Rails Applications → Manage Rails Applications…
  4. In questa schermata trovi tutte le applicazioni Rails che sono
    presenti nella cartella rails_apps. Tu vuoi creare una nuova
    applicazione, per cui fai click su Create New Rails App…
  5. Come vedi, una finestra di command prompt si apre, con
    rails_appcome directory selezionata. Per essere in grado di usare
    un’applicazione
    Rails, dobbiamo prima di tutto crearla. Per cui scrivi in tale
    finestra: rails
    hello e premi invio. Questo comando crea per te la struttura base
    dell’applicazione hello.
  6. cd hello
  7. dir hello ti mostrerà la lista di cartelle e file presenti
    nell’applicazione
  8. Vogliamo generare un controller principale per la tua applicazione
    che chiamiamo Ciao ed una action/metodo al suo interno, che
    chiameremo
    index. Per cui scrivi: ruby script\generate controller Ciao index che
    genera diversi file, tra cui il controller
    app\controllers\ciao_controller.rb e il template
    app\views\ciao\index.rhtml
  9. A questo punto vogliamo modificare il template index.rhtml, per
    cui
    impartisci il comando edit app\views\ciao\index.rhtml (o apri il file
    C:\InstantRails\rails_apps\hello\app\views\ciao\index.rhtml nel tuo
    editor
    di fiducia).
  10. Cancella il contenuto del file index.rhtml e scrivi al suo
    interno: <%= “Ciao Ruby!” %>. Salva il file e chiudi la finestra del
    command prompt.
  11. Nella finestra di InstantRails che è rimasta aperta, fai click su
    Refresh List, in modo tale da visualizzare hello nella lista delle
    applicazioni.
  12. Seleziona hello, e fai click su Start with Mongrel. NON chiudere
    il command prompt che si apre.
  13. Avvia Firefox e vai alla pagina: http://localhost:3000/ciao

A questo punto dovresti essere in grado di vedere Ciao Ruby! nella
pagina
generata.

Alcune considerazioni, per chiarire un po’ alcuni dubbi che potresti
avere:
Ciao è il nostro controller, e index è l’action che vogliamo invocare. Il
formato del tuo url, è
http://nomehost:3000/nome_del_controller/nome_della_azione, dove 3000 è la
porta di default che stiamo usando per il server. Nel nostro caso, non
abbiamo specificato http://localhost:3000/ciao/index perché index è l’azione
di default per i controllers, per cui possiamo ometterla. Il template
index.rhtml che abbiamo modificato, è la pagina che viene caricata di
default quando l’azione index è invocata.
Se tu volessi omettere anche il nome del controller, per accedere a
/ciao/index direttamente da http://localhost:3000, puoi rimuovere il
file
C:\InstantRails\rails_apps\hello\public\index.html (attenzione .html
nella
cartella public, non .rhtml nella cartella ciao) e modificare il file
C:\InstantRails\rails_apps\hello\config\routes.rb aggiungendo la riga
map.connect ‘’, :controller => “ciao” (c’è già una riga simile, per cui
basta che rimuovi il carattere # di commento, e sostituisci welcome con
ciao). Se fai queste modifiche, vedrai la pagina desiderata
all’indirizzo
http://localhost:3000/. Se volessi creare una variabile nel controller
inoltre, ed accedervi dal template .rhtml, puoi inserire nell’action
index:

@saluto = “Nuovamente ciao Ruby!”

e richiamare il valore della variabile in index.rhtml con:

<%= @saluto %>

Fino ad ora abbiamo visto View e Controller, nell’acronimo MVC ci manca
il
Model. Non abbiamo effetuato nessuna interazione con i database, per cui
ovviamente il nostro hello world non ha bisogno di un modello. Lavorare
con
i database però, risulta piuttosto semplice e ti consiglio di approfondire
l’argomento, non te ne pentirai. Tieni conto che hai bisogno di creare
modelli che corrispondono alle tabelle che hai nel database, e che puoi
specificare i parametri di connessione nel file
C:\InstantRails\rails_apps\hello\config\database.yml.

Questo dovrebbe darti un piccolo aiuto per iniziare, ma ora sta a te
studiacchiare un po’ di articoli online per capirne di
più.
In bocca al lupo,
Antonio

GRAZIE RAGAZZI!!!

Davvero. Intanto sono riuscito, grazie alla procedura di Antonio, a
creare una paginetta in Ruby.
Ho fatto un pò l’automa, ma siete stati grandi (vista la
presentazione!).

Mi rimane difficile da capire la logica di RoR (che poi è anche la sua
grande forza…), dei Controller, View etc…

Ma studiare non mi fa paura.

Grazie ancora

già in effetti questa è una bella mailing, l’ ho notato subito anch’ io.
il paradigma model view control non lo capisci perchè è troppo semplice
:smiley:
appena avrai un minimo di confidenza vedrai che non è niente di
difficile

la view si occupa della presentazione/visualizzazione dei dati.

il controller genera i dati basandosi(se serve) su un modello che altro
non
è che un’ astrazione del tuo db, inn breve il modello al posto di farti
scrivere query sql nella logica applicativa ti mette a disposizione
delle
api di alto livello per effettuare le operazioni…

spero di averti chiarito un po di più le idee, cmq se cerchi anche solo
su
wikipedia troverai una spiegazione migliore

Saluti Andrea
----- Original Message -----
From: “biancoc_sdc” [email protected]
To: [email protected]
Sent: Monday, October 16, 2006 9:12 PM
Subject: [ruby-it] Re: Re: Re: HELP ME PLEASE: RoR!!!

Ma studiare non mi fa paura.

Grazie ancora


Posted via http://www.ruby-forum.com/.


On 10/16/06, Antonio C. [email protected] wrote:

On 10/16/06, Guest [email protected] wrote:

Andrea, vergognandomi come un bambino ti illustro la mia triste
situazione:

Mi affianco ad Antonio e ti invito a vedere una presentazione che avevo
preparato per un meeting di alcuni mesi fa.
Il link della descrizione dell’evento è
http://ruby-it.org/pages/Ruby%40JUGPadovahttp://ruby-it.org/pages/Ruby%2540JUGPadovae
se vuoi direttamente vederti la presentazione puoi scaricarla su
http://ruby-it.org/download/video-blog/index.html. Se hai flash
installato
te la gusti senza problemi.

Assieme alle dritte di Antonio ti sarà sicuramente d’aiuto :wink:


Andrea R.

: : i’m a miner : : | therubymine.com