Url Routes Rails

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    Favorites, Groups & Events

    Url Routes Rails - Presentation Transcript

    1. URL e routes
      • Si riferisce al testo che indica l'indirizzo di un sito web comprensivo di tutti gli elementi che lo compongono cioe' (http://www.nomedi-dominio.estensione) Va digitato nell'apposita barra del browser, e quest'ultimo individuera' e carichera' il sito in questione.
    2.  
      • Nel web navighiamo su una successione di pagine.
      • Digitiamo l’url o un link ,
      • il browser richiede al server la pagina indirizzata dall’ url o dal link
      • Il web server restituisce, come risposta al browser, la pagina richiesta sottoforma di codice html
      • Il web ha al suo centro la pagina
      • Questa interpretazione del web risale ai giorni in cui esso consisteva quasi interamente di documenti
      • Il documento era la risorsa primaria del web
      • L’http era un modo di richiedere questi documenti
      • Il web è evoluto in maniera significativa, ma rimane popolare questa visione centrata sulla pagina
      • molti strumenti disponibili per costruire i siti web e le applicazioni di rete ancora ruotano attorno a questa idea di pagina.
      • Se il sito è fatto solo di pagine statiche, ossia di pagine con il solo codice html,
      • Allora per caricare la pagina che ci interessa,
      • la digitiamo nella barra degli indirizzi del browser,
      • scrivendo l’url con il nome del sito e il pathname della pagina html,
      • www.studentefelice.com/felice.html
      • O se la pagine felice.html si trova nella cartella “buoni” della root, scriveremo l’indirizzo come
      • www.studentefelice.html/buoni/felice.html
      • Le pagine web dinamiche sono caratterizzate dal mescolare il codice html con il codice di un linguaggio di programmazione.
      • Ciò consente di
        • usare i costrutti di iterazione e di decisione, non disponibili in maniera nativa nel html
        • di usare le variabili
      • L’uso di queste strutture di controllo e di variabili consente di ottenere pagine web con dati sempre diversi,
        • letti da un database
        • ad esempio, la medesima pagina web potrebbe mostrarmi le calzature sportive per donna oppure le calzature sportive per uomo
        • di conseguenza la medesima pagina appare, nei due distinti casi, diversa, perché in essa appaiono differenti dati.
      • Per distinguere le pagine statiche da quelle dinamiche, si suole aggiungere a quelle dinamiche un suffisso che indica il linguaggio di programmazione mescolato con l’html
      • Ad esempio
        • nel linguaggio php, la pagina si chiama felice.php;
        • nel linguaggio active server pages, la pagina si chiama felice.asp
        • Nel linguaggio java server page, la pagina si chiama felice.jsp
      • Rails ha un diverso approccio
      • Abbraccia il design pattern MVC
      • Ha una natura orientata agli oggetti
      • Invece di identificare pagine web, Rails ha a che fare con gli Oggetti
      • Gli oggetti sono le Risorse della applicazione di Rails
      • Tipicamente Rails esegue della azioni su questi oggetti
      • create, edit, delete, show sono tipiche azioni
    3.  
      • Ciascuna azione nel nostro controllore restituirà un certo tipo di risposta al browser
      • Un’applicazione web, nella sua forma più semplice, accetta una richiesta di un browser, la elabora ed invia una risposta
      • La prima domanda alla quale dobbiamo rispondere è:
      • L’applicazione come fa a sapere che cosa deve fare con la richiesta ?
      • Ad esempio: un’applicazione di vendita online riceverà una richiesta di mostrare un catalogo di prodotti, di aggiungere gli acquisti al carrello della spesa, etc… etc…
      • Come fa l’applicazione ad associare ciascuna richiesta all’appropriato codice che la deve elaborare?
      • Nel PHP, la richiesta è di una pagina php, che già ha, al suo interno, il codice php che deve elaborare la richiesta medesima.
      • Invece Rails aderisce al pattern Model Controller View.
      • La pagina web corrisponde a grandi linee alla View
      • Ma ,in Rails, il codice che deve elaborare la richiesta per generare la view si trova nel Controller!!
      • In Rails dobbiamo associare l’URL del web con il codice della nostra applicazione
      • A Rails occorre una regola che gli dica quale codice eseguire per un dato URL
      • Le regole che Rails usa per mappare i percorsi URL al codice sono chiamate routes
      • Le routes sono definite nel file config/routes.rb
      • Il file routes.rb contiene le regole di routing
      • Il contenuto di default, ignorando i commenti è il seguente:
      • ActionController::Routing.draw do |map|
      • map.connect ‘:controller/:action/:id’
      • map.connect ‘:controller/:action/:id.:format’
      • end
      route route
      • Un route è costituito da più componenti, separati da uno slash /
      • Quando viene digitato un URL, esso viene confrontato con ciascun route a partire dal primo della lista, finchè si trova un route la cui struttura combacia con l’URL
      • Ad esempio, se il nostro URL è
      • http://example.com/meetings/show/10
      • esso risulta costituito da tre diversi componenti: meetings, show, 10
      • Questi componenti combaciano con :controller, :action, :id del nostro route
      • Per cui rails crea un hash (array con chiave) così fatto:
      • params={:controller=>”meetings”,
      • :action =>”show”,
      • :id =>”10” }
      • Rails invocherà il metodo show del controllore “meetings”, con un parametro id=10.
      • Ad esempio, se il nostro URL è:
      • http://localhost:3000/ads/3
      • La struttura dell’url è fatta da due soli componenti e quindi non combacia con nussuna regola di default di routes.rb
      • Dobbiamo pertanto aggiungere una nuova regola di routing:
      • map.connect ‘/ads/:id’, :controller=>’ads’, :action=>’show’
    4.  
    5.  
    6.  
    7.  
    8.  
    9.  
    10.  
    11.  

    + silvanonatalizisilvanonatalizi, 7 months ago

    custom

    551 views, 0 favs, 0 embeds more stats

    come collegare url con il codice rails

    More info about this document

    © All Rights Reserved

    Go to text version

    • Total Views 551
      • 551 on SlideShare
      • 0 from embeds
    • Comments 0
    • Favorites 0
    • Downloads 8
    Most viewed embeds

    more

    All embeds

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?

    Categories