人々がこの宝石を使用し、多くの人がそれを愛しているため、これはおそらく初歩的な質問ですが、目的がわかりません。私はプロジェクトを見ていますが、ここではt.references :foreign_key_table_name , :foreign_key => true
、 、add_foreign_key :table :foreign_key_table_name, :options
、および createなどの場所で何度も使用されていますt.foreign_key :foreign_key_table_name
。文脈から外れているため、混乱しないことを願っています。
しかし、これがレールに組み込まれているものとどのように異なるのか、t.references :foreign_key_table_name
または単に追加するだけではわかりませんt.integer :foreign_key_table_name_id
か? これが「外部キー」であることを明確にすることで、読みやすくするだけですか?その場合は、宝石の代わりにコメントを追加することもできます...私が見る唯一の利点は:dependent
、モデルに含めるのではなく、移行などのオプションを移動できることですが、誰が気にしますか?