
Associazioni ActiveRecord
has_many, belongs_to, has_one, has_and_belongs_to_many, polymorphic, dependent destroy
1Quale associazione si dovrebbe usare in un modello Comment per indicare che un commento deve appartenere a un articolo?
Quale associazione si dovrebbe usare in un modello Comment per indicare che un commento deve appartenere a un articolo?
Risposta
L'associazione belongs_to viene usata per definire una relazione in cui un record appartiene a un altro. In questo caso, un Comment appartiene a un Article. Per convenzione, ciò implica che la tabella comments contiene una colonna article_id che è una chiave esterna verso la tabella articles.
2Quale associazione si dovrebbe usare in un modello Article per consentire di avere più commenti associati?
Quale associazione si dovrebbe usare in un modello Article per consentire di avere più commenti associati?
Risposta
L'associazione has_many definisce una relazione uno-a-molti. Un Article può avere più Comment. Questa associazione è lo specchio di belongs_to e non memorizza una chiave esterna nella propria tabella, ma si aspetta che il modello associato (Comment) abbia una colonna article_id.
3Quale associazione si dovrebbe usare affinché un utente abbia un solo profilo, dove il profilo contiene la chiave esterna?
Quale associazione si dovrebbe usare affinché un utente abbia un solo profilo, dove il profilo contiene la chiave esterna?
Risposta
L'associazione has_one definisce una relazione uno-a-uno in cui l'altro modello contiene la chiave esterna. Nel caso User has_one :profile, la tabella profiles conterrà una colonna user_id. È l'inverso di has_one/belongs_to a seconda di dove si trova la chiave esterna.
Come modellare una relazione molti-a-molti tra Post e Tag con una tabella di join contenente attributi aggiuntivi?
Qual è il comportamento predefinito dell'opzione dependent: :destroy su un'associazione has_many?
+21 domande da colloquio
Altri argomenti di colloquio Ruby on Rails
Fondamenti di Ruby
Programmazione orientata agli oggetti in Ruby
Fondamenti di Rails
Routing & Controllers
Fondamenti di ActiveRecord
Views e template ERB
Query ActiveRecord avanzate
Form Rails
Autenticazione e autorizzazione
Asset Pipeline moderno e frontend
Modalità API di Rails
Test con RSpec
ActiveJob & Background Jobs
ActionCable & WebSockets
ActionMailer
ActiveStorage
Strategie di caching
Migrazioni avanzate
Rails Engines e app modulari
Ottimizzazione delle prestazioni
Design Pattern in Rails
Metaprogrammazione in Ruby
Sicurezza in Rails
GraphQL con Rails
Deployment e Produzione
Monitoring & Logging
Strategie di upgrade di Rails
Padroneggia Ruby on Rails per il tuo prossimo colloquio
Accedi a tutte le domande, flashcards, test tecnici, esercizi di code review e simulatori di colloquio.
Inizia gratis