私はエクササイズとルーチンの両方を備えたレールトレーニングアプリを構築しています。私は、各ルーチンがいくつかの演習(has_many:exercises)で構成されることを望みますが、演習は必ずしもルーチンに属している必要はありません。それを行う方法はありますか?モデルをオプションで別のモデルに属するようにするための方法はありますか?
0
A
答えて
3
guidesを読むことは、常に良いスタートです。これはRails 5以降で動作します。
belongs_to :routine, optional: true
0
多対多リレーションシップではなく、多対多リレーションシップが必要です。
エクササイズは、任意の数のルーチンに関連付けられ、ルーチンが1つ以上のエクササイズに関連付けられることを望みます。
あなたはこのようなもので終わる:
# app/models/routine.rb
class Routine < ActiveRecord::Base
has_and_belongs_to_many :exercises
end
# app/models/exercise.rb
class Exercise < ActiveRecord::Base
has_and_belongs_to_many :routines
end
# db/migrate/1213123123123_create_exercises_routines_join_table.rb
class CreateExercisesRoutinesJoinTable < ActiveRecord::Migration
def self.change
create_table :exercises_routines, :id => false do |t|
t.integer :exercise_id
t.integer :routine_id
t.index [:category_id, :routine_id]
end
end
end
関連する問題
- 1. selectタグに別のモデルが属するモデルを入れよう
- 2. 完全なモデルのために@ Html.HiddenForを使う方法はありますか?
- 3. 別の親モデルを取得するためのLaravel hasManyThroughはありますか?次のように
- 4. 別のモデルに属するモデルのフォームエラーを追加するにはどうすればいいですか?
- 5. モデルを別のモデルに取り付けた後にピボットを戻す方法は?
- 6. あるモデルのデータを別のモデルに読み込む方法
- 7. ExtJS 4:モデルを別の既存のモデルとIDで関連付ける方法はありますか?
- 8. laravelのモデルを別のモデルにバインドする方法
- 9. 他のモデルのレコードに従ってモデルを構築する方法はありますか?たとえば
- 10. papervision3Dでcolladaモデルをアンチエイリアスする方法はありますか?
- 11. PHP MVC - モデルが別のモデルのデータにアクセスする必要があります
- 12. 別のモデルを作成する際にモデルを作成するためのベストプラクティス
- 13. あるモデルから別のモデルに値を渡す
- 14. simulinkモデルを別のsimulinkモデルに挿入する方法
- 15. Rails - PaperClipモデルを別のモデルに移動する方法
- 16. rubyはあるモデルから別のモデルにクリップクリップをコピーしますか?
- 17. CodeIgniterでは、別のモデルから1つのモデルにアクセスするにはどうすればよいですか?
- 18. モデルファーストデザインのモデルに[Display(= "displayname"])のような属性を適用する方法は?
- 19. モデルがトップレベルのオブジェクトでない場合、ノックアウトにモデルをバインドする方法はありますか?
- 20. belongs_toで2つの属性を使用してActiveRecordモデルを別のモデルに接続する方法
- 21. 予測モデルが正しいかどうかをよりうまくテストする方法はありますか?
- 22. チェックボックスリストをasp.net mvcのモデルにバインドする方法はありますか
- 23. モデルの列をrails5でオプションにする方法
- 24. Eclipseでモデル/ UMLを簡単に作成する方法はありますか?
- 25. models.pyにないモデルでsyncdbをプルする方法はありますか?
- 26. 置換モデルはクロージャのために機能しますか?あるいは、環境モデルが必要ですか?
- 27. Yiiモデルでテーブルフィールドを保護して、モデルにゲッタ/セッターを強制する方法はありますか?
- 28. Rails 3のプロジェクト(別のモデル)に属するすべてのステージ(1つのモデル)を表示するにはどうすればよいですか?
- 29. Django:別のモデルからモデルのデータを生成するには?
- 30. あるモデルを別のモデルから更新する