Sha256: 5ed89445a1775535af41c290ee30f29b2a17b49621b95a3aee6af40564dc169d
Contents?: true
Size: 848 Bytes
Versions: 15
Compression:
Stored size: 848 Bytes
Contents
# Copyright 2022 Google LLC # # Use of this source code is governed by an MIT-style # license that can be found in the LICENSE file or at # https://opensource.org/licenses/MIT. class Singer < ActiveRecord::Base # `albums` is defined as INTERLEAVE IN PARENT `singers`. # The primary key of `albums` is (`singerid`, `albumid`). has_many :albums, foreign_key: :singerid # `tracks` is defined as INTERLEAVE IN PARENT `albums`. # The primary key of `tracks` is [`singerid`, `albumid`, `trackid`]. # The `singerid` column can be used to associate tracks with a singer without the need to go through albums. # Note also that the inclusion of `singerid` as a column in `tracks` is required in order to make `tracks` a child # table of `albums` which has primary key (`singerid`, `albumid`). has_many :tracks, foreign_key: :singerid end
Version data entries
15 entries across 15 versions & 1 rubygems