Forum: Italian Ruby user group Ruby on Rails, senza activeRecord :Base

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
457cf601889947ce07fd003c28192d58?d=identicon&s=25 Cecchin Daniel (dynamic84)
on 2009-05-04 22:17
Buona sera,
vorrei saper se a qualcuno è capitato di utilizzare il MVC senza
ActiveRecord collegato quindi ad un database (e.g. MySql).

Il problema è sorto, nella fase di sviluppo ed importando delle classi
che eseguono da se le operazioni di connessione attraverso un database
tramite driver jdbc di MySql.

La situazione è al lato pratico... ovvero... sono riuscito ad
instanziare e chiamare i vari metodi dal Controller ma non so
esattamente come collegare la view ed inserire il dato nel metodo set
che è implementato nel controller...

L'idea mia era quella di instanziare un oggetto nel model, e.g.

def title
  @title = # non so che mettere
end

Nel view inserire:

<%= text_field :title %> # che richiami il metodo definito nel model

poi nel controller instanziare il metodo set ed inserire l'oggetto title
import 'java.PostInfo'
def create
@post_info = PostInfo.new
@post_info.setTitle(@post.title)
end

per info il setTitle in java è sviluppato in questo modo:

public void setTitle(String title) {
        primaryInformation.addInformation("title", title);
}

// dove primaryInformation è stata instanziata all'interno del
costruttore PostInfo.

Grazie
Un saluto a tutto il gruppo Italian Ruby
Daniel
7de465f222e6a9c7fe658e370d0bfe05?d=identicon&s=25 Paolo Montrasio (pmontrasio)
on 2009-05-05 18:21
Daniel,

dal tuo post di qualche giorno fa deduco che usi JRuby. Confesso che di
Ruby sulla VM Java non so nulla, ma il tuo problema mi ha incuriosito e
così ho trovato
http://wiki.jruby.org/wiki/Running_Rails_with_Acti...

Apparentemente a parte installare le gemme e configurare database.yml
non c'è altro da fare. Si usa tranquillamente ActiveRecord e jdbc va a
gestire la connessione con il db.

Se invece vuoi fare a meno di ActiveRecord, a logica dovresti usare le
classi Java per l'accesso al db, con tutti i loro setter e getter. Non
dovrai quindi creare nessun modello Ruby che tra l'altro non servono a
comunicare con le view: quello che le view vedono infatti sono solo le
variabili di istanza del loro controller. Ai dati dei modelli arrivano
tramite quelle.

Per finire, ribadisco che dell'argomento ne so pochissimo ma visto che
non ti risponde nessuno ho pensato che due parole per aiutarti a
riflettere potessero essere meglio che nulla.


Paolo

Cecchin Daniel wrote:
> Buona sera,
> vorrei saper se a qualcuno è capitato di utilizzare il MVC senza
> ActiveRecord collegato quindi ad un database (e.g. MySql).
>
> Il problema è sorto, nella fase di sviluppo ed importando delle classi
> che eseguono da se le operazioni di connessione attraverso un database
> tramite driver jdbc di MySql.
>
> La situazione è al lato pratico... ovvero... sono riuscito ad
> instanziare e chiamare i vari metodi dal Controller ma non so
> esattamente come collegare la view ed inserire il dato nel metodo set
> che è implementato nel controller...
>
> L'idea mia era quella di instanziare un oggetto nel model, e.g.
>
> def title
>   @title = # non so che mettere
> end
>
> Nel view inserire:
>
> <%= text_field :title %> # che richiami il metodo definito nel model
>
> poi nel controller instanziare il metodo set ed inserire l'oggetto title
> import 'java.PostInfo'
> def create
> @post_info = PostInfo.new
> @post_info.setTitle(@post.title)
> end
>
> per info il setTitle in java è sviluppato in questo modo:
>
> public void setTitle(String title) {
>         primaryInformation.addInformation("title", title);
> }
>
> // dove primaryInformation è stata instanziata all'interno del
> costruttore PostInfo.
>
> Grazie
> Un saluto a tutto il gruppo Italian Ruby
> Daniel
72e0b3f5418bfcf47488918109068c4c?d=identicon&s=25 Andrea Cuius (q_rails)
on 2009-05-05 19:06
(Received via mailing list)
Hai pensato a sinatra?
ah come mai usi jruby?
457cf601889947ce07fd003c28192d58?d=identicon&s=25 Cecchin Daniel (dynamic84)
on 2009-05-06 13:29
Grazie mille Paolo,
non sai quanto mi hai chiarito le idee... con questa tua affermazione,
non è da molto che sono entrato in questo mondo, ma per il progetto
all'uni dovevamo interagire con un codice Java(in risposta ad Andrea).

Quando avrò risolto il problema ... ti farò sapere esattamente la
struttura completa per le chiamate alle classi Java...

Saluti
Daniel

Grazie ancora, Paolo...

Paolo Montrasio wrote:
> Daniel,
>
> dal tuo post di qualche giorno fa deduco che usi JRuby. Confesso che di
> Ruby sulla VM Java non so nulla, ma il tuo problema mi ha incuriosito e
> così ho trovato
> http://wiki.jruby.org/wiki/Running_Rails_with_Acti...
>
> Apparentemente a parte installare le gemme e configurare database.yml
> non c'è altro da fare. Si usa tranquillamente ActiveRecord e jdbc va a
> gestire la connessione con il db.
>
> Se invece vuoi fare a meno di ActiveRecord, a logica dovresti usare le
> classi Java per l'accesso al db, con tutti i loro setter e getter. Non
> dovrai quindi creare nessun modello Ruby che tra l'altro non servono a
> comunicare con le view: quello che le view vedono infatti sono solo le
> variabili di istanza del loro controller. Ai dati dei modelli arrivano
> tramite quelle.
>
> Per finire, ribadisco che dell'argomento ne so pochissimo ma visto che
> non ti risponde nessuno ho pensato che due parole per aiutarti a
> riflettere potessero essere meglio che nulla.
>
>
> Paolo
>
> Cecchin Daniel wrote:
>> Buona sera,
>> vorrei saper se a qualcuno è capitato di utilizzare il MVC senza
>> ActiveRecord collegato quindi ad un database (e.g. MySql).
>>
>> Il problema è sorto, nella fase di sviluppo ed importando delle classi
>> che eseguono da se le operazioni di connessione attraverso un database
>> tramite driver jdbc di MySql.
>>
>> La situazione è al lato pratico... ovvero... sono riuscito ad
>> instanziare e chiamare i vari metodi dal Controller ma non so
>> esattamente come collegare la view ed inserire il dato nel metodo set
>> che è implementato nel controller...
>>
>> L'idea mia era quella di instanziare un oggetto nel model, e.g.
>>
>> def title
>>   @title = # non so che mettere
>> end
>>
>> Nel view inserire:
>>
>> <%= text_field :title %> # che richiami il metodo definito nel model
>>
>> poi nel controller instanziare il metodo set ed inserire l'oggetto title
>> import 'java.PostInfo'
>> def create
>> @post_info = PostInfo.new
>> @post_info.setTitle(@post.title)
>> end
>>
>> per info il setTitle in java è sviluppato in questo modo:
>>
>> public void setTitle(String title) {
>>         primaryInformation.addInformation("title", title);
>> }
>>
>> // dove primaryInformation è stata instanziata all'interno del
>> costruttore PostInfo.
>>
>> Grazie
>> Un saluto a tutto il gruppo Italian Ruby
>> Daniel
This topic is locked and can not be replied to.