我有User和Todo模型
Todo belongs_to用户和用户has_many todos
待办事项可以标记为"完成"我想存储标记它的用户。
我有这个迁移
class CreateTodos < ActiveRecord::Migration
def self.up
create_table :todos do |t|
t.integer :done_by_user
end
end
end
现在我想存储标记todo的用户的用户ID:done_by_user
我在Todo课程中试过这个
has_one :done_by_user, :class_name => "User"
和这个
has_one :done_by_user, :through => :user
我该怎么做?
答案 0 :(得分:1)
在您的Todo课程中:
belongs_to :done_by_user, :class_name => "User", :foreign_key => "done_by_user"
在您的用户班
中has_many :done_todos, :class_name => "Todo", :foreign_key => "done_by_user"
现在你可以这样做:
user.done_todos => ['done_todo_1', 'done_todo_2', ... , 'done_todo_n']
todo.done_by_user => < User Object >