Volt – un nuovo Framework per Ruby in cui sia il lato server che quello client sono scritti in Ruby tramite OPAL (un compilatore da Ruby a JavaScript) in modo che lo sviluppatore possa scrivere applicazioni dinamiche senza scrivere un singolo codice JavaScript. Volt è simile a Meteor ma non ha tutte le parti di Meteor.
La configurazione di base per Volt Framework
Installiamo Volt e creiamo un'app vuota. Assicurati di avere installato Ruby (>2.1.0) e Ruby Gems.
Installa Volt Gem:
gemma installa voltPossiamo creare un nuovo progetto utilizzando la gemma volt:
volt nuovo progetto_campioneAccendi il server web:
bundle di server exec voltPossiamo accedere alla console Volt con:
bundle console exec voltIl compilatore Opal Le applicazioni Volt eseguono Ruby sia sul frontend che sul backend. Pertanto l'istruzione puts in un'azione del controller viene visualizzata nella finestra del browser e non nella console del terminale. E anche scrivere il codice Ruby per il front-end con Volt è molto semplice. Il compilatore opale traduce Ruby in JavaScript. La cosa sorprendente è che non c'è alcun processo di compilazione da seguire e nessuno strumento di creazione da installare. Quando esegui volt server, tutto avviene in background. Non è necessario alcun aggiornamento o riavvio quando si apportano modifiche al codice e ai dati. Chiamare un avviso JavaScript con Ruby
# Chiamata di funzioni JavaScript nel modulo Ruby Classe principale MainController < Volt::ModelController # Chiamato dal front-end quando viene caricata la rotta "todos". def todos alert 'totes stupiscono' end end endSincronizzazione semplice tramite modelli reattivi Concentrati maggiormente su questa parte quando impari il volt. Volt::Model agisce come oggetti Ruby simili a hash che si sincronizzano simultaneamente tra il front-end e il back-end. Di solito, gli aggiornamenti al modello avvengono automaticamente. Il concetto di "negozi" in Volt viene utilizzato per sincronizzare i dati dell'applicazione in forme persistenti e non persistenti. E anche un mezzo uniforme per sincronizzare i dati tra archiviazione locale, MangoDB, cookie, sessioni e parametri URL. Controlliamo come creare un'app di chat in tempo reale di Ruby e HTML:
# Crea un modello dati persistente. Questo viene archiviato in MongoDB. class ChatMessage < Volt::Model endVisualizza codice:
<:Corpo>Supporto completo per endpoint HTTP Volt non è solo per il framework in tempo reale. Fornisce inoltre flussi di lavoro per lo sviluppo di applicazioni HTTP tradizionali. Controlla un esempio da GitHub:{{ _chat_messages.each fa |msg| }}
{{ msg._testo }}
{{ FINE }}
Le rotte # per l'endpoint HTTP ottengono '/simple_http', controller: 'simple_http', azione: 'index' get '/simple_http/store', controller: 'simple_http', azione: 'mostra' post '/simple_http/upload', controller : 'simple_http', azione: 'upload' # Esempio di classe controller SimpleHttpController < Volt::HttpController def index render text: 'questo è solo del testo' end def show render text: “Mi hai preso a ” “#{store._simple_http_tests .first._name}” end def upload caricato = params[:file][:tempfile] File.open('tmp/uploaded_file', 'wb') do |f| f.write(uploaded.read) end render text: 'Grazie per il caricamento' end endFonte: Datamelon
Iscriviti per gli ultimi aggiornamenti
Articoli correlati