こんにちは、 私はレールが初めてです。私にとっては目が開かれていて、コードを書くと効率が悪いようです。私のコードは、あなたが私にこれを書くためのより良い方法を見つけるのを助けることができます。多対多ベースのこのクエリーをレールに書く方法
動画テーブル:
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}
この戻り、すべての列のデータではなく、私が欲しいだけタイトル
、そこに「ジョジョ・メイヤー」という名前の1つの結果だけリターンです、しかし、戻り値はactiveRelationであるため、私はビデオを呼び出すことができないので、私の仕事は、まずビデオを呼び出すためにビデオインスタンスを取得することです。私はそれが間違いなくそれを行う方法であることを知っている
どのような提案?
これは多かれ少なかれ関連性ですか? – mko
ちょっと旅行、私は多対多の関係を行うための2つの方法を知っている限り、あなたの解決策は私には新しいようだ、どこにこの協会についての参考文献を見つけることができます、ありがとう – mko
それに素晴らしいrailscastはhttp ://railscasts.com/episodes/154-polymorphic-association – Trip