PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Rails - Utilizzo di join con associazioni con nome personalizzato

where si aspetta il nome effettivo della tabella, lo inserisce semplicemente in SQL:

Article.where(whatever: {you: 'want'}).to_sql
=> "SELECT `articles`.* FROM `articles` WHERE `whatever`.`you` = 'want'"

Quindi puoi usare:

Measurement.joins(:examination).where(test_structures: { year: 2016, month: 5 })

Ma non va bene

Quindi dipendi dal nome della tabella mentre Model dovrebbe astrarre tali cose. Potresti usare merge :

Measurement.joins(:examination).merge(TestStructure.where(year: 2016, month: 5))