Эй, ребята
Я новичок в рельсах, у меня много откровений, и я пишу какой-то код, и он кажется неэффективным, я вставляю свой код ниже, не могли бы вы помочь мне найти лучший способ написать это.
Таблица видео:
class CreateVideos < ActiveRecord::Migration
def self.up
create_table :videos do |t|
t.string :title
t.string :desc
t.string :tudou
t.string :otherurl
t.timestamps
end
end
def self.down
drop_table :videos
end
end
Стол барабанщиков:
class CreateDrummers < ActiveRecord::Migration
def self.up
create_table :drummers do |t|
t.string :first_name
t.string :middle_name
t.string :last_name
t.string :nick_name
t.boolean :gender
t.timestamps
end
end
def self.down
drop_table :drummers
end
end
и я установил их в простую ассоциацию «многие ко многим»
class CreateDrummersVideosJoin < ActiveRecord::Migration
def self.up
create_table :drummers_videos, :id => false do |t|
t.integer "drummer_id"
t.integer "video_id"
end
end
def self.down
drop_table :drummers_videos
end
end
Я хочу найти все название барабанщика. Имя зовется "Jojo", фамилия видео "Mayer"
мой код:
title = Drummer.where(:first_name => "Jojo", :last_name => "Mayer").first.videos.each {|t| t.title}
Это возвращает все данные столбца, а не только название, которое я хочу
и так как есть только один возвращаемый результат с именем "Jojo Mayer", но возвращаемое значение - activeRelation, я не могу вызывать видео, поэтому мой обходной путь использует: сначала получить экземпляр видео, чтобы вызвать видео , Я знаю, что это определенно не так
есть предложения?