0

そのため、Rails3でいくつかのデータを構造化する方法について少し苦労しています。

と呼ばれるテーブルとTasksと呼ばれるテーブルがありますTodos。Todoには最大4つのタスクを含めることができ、それらは次のようにテーブルに編成されます。

Todosテーブル:

  • id
  • todoname
  • slot1
  • slot2
  • slot3
  • slot4

タスクテーブル:

  • id
  • 名前
  • 説明
  • button_text
  • button_url

Todosテーブルでは、slot1からslot4は関連するタスクのIDを持ちます。モデル内の関連付けを構造化する方法がわかりません。

単純な古いものhas_many :tasksで、belongs_to :todosうまく機能しません。

何か案は?

4

2 に答える 2

2

私はこのようにします

class Todo < ActiveRecord::Base
  has_many :tasks, :limit => 4
end

class Task < ActiveRecord::Base
  belongs_to :todo
end


resources :todos do
  resources :tasks
end

の4つのタスクを取得するには、次の@todoようにします。@todo.tasks

于 2012-10-22T20:31:55.823 に答える
0
class Todo < ActiveRecord::Base
  has_many :tasks through :slots, :limit=>4
end
class Slot < ActiveRecord::Base
  belongs_to :todos
  belongs_to :tasks
end
于 2012-10-22T20:32:58.390 に答える