Buona serata
sono alle prese con i primi passi nel framework Ruby on Rails
il motivo della mia immersione in questo mondo è per la tesi di laurea…
dovrò sviluppare un’applicazione con questo framework… magari appena
entro nel dettaglio vi aggiornerò
avrei bisogno di due aiutini, premetto che ancora non conosco tutti i
meccanismi di Ruby on Rails e non conosco alla perfezione Ruby ma
essendo uno studente di ingegneria informatica bene o male seguendo
qualche guida e cominciando a vedere il libro Agile Development with
Rails qualche base già ce l’ho… ma mi sono bloccato…
mettiamo che io voglia utilzzare una classe User per gestire gli utenti
e Address per i relativi indirizzi, ovvio potrei inserire i campi
dell’indirizzo nell’utente ma faccio questo esempio per capire come
funziona rails
le cose che avrei bisogno di sapere sono:
come interagire tra dati di più database
come gestire i tipi non primitivi nel database (mi spiego meglio
dopo…)
se per esempio direttamente in SQL scrivessi qualcosa del tipo:
select users.nome, users.cognome, addresses.indirizzo,
addresses.citta from users join addresses on addresses.user_id =
users.id
come lo dovrei tradurre in ruby?
se utilizzo find_by_sql su User e Address ovviamente la cosa funziona ma
io lo vorrei fare diciamo solo su User e costruire l’indirizzo con la
foreign key…
mi spiego meglio… in java, per esempio avrei avuto la classe Address
con all’interno un campo user_id, e questo l’ho fatto anche in ruby, e
User con all’interno una variabile d’istanza di tipo Address da
“costruire”… in ruby come si fa? o meglio… essendo sia Address che
User già mappate sul db tramite Active Record… meglio che non dico
altro se no potrei confondere le idee…
per l’altro problema, che in SQL risolverei, senza considerare eventuali
problemi di driver che anche possono esserci, così (potrei usare gli
alias ma è x far capir meglio la cosa):
select db1.users.nome, db1.users.cognome, db2.addresses.citta from
bd1.users join db2.addresses on db2.addresses.user_id = db1.users.id
come dovrei modificare il file database.yml? o devo specificare in ogni
modello qualcosa tipo:
ActiveRecord::Base.establish_connection bla bla…
se devo fare così il file database.yml lo devo lasciare?
scusate le tante domande ma ci sto uscendo un pò pazzo e visto che sto
esplorando per la prima volta il framework con l’azienda con la quale
faccio il tirocinio vi chiedo se possibile di darmi una mano
ho letto, ma ancora non studiato di direttive tipo :has_many,
:has_one… che potrebbero risolvere la mia situazione ma comunque
saranno implementate in qualche modo…
scusatemi per le pessime doti riassuntive e per il titolo forse non
molto adatto…
buona serata a tutti e grazie in anticipo
Silvio