Ruby on rails 集合\u在ruby on rails中选择并保存记录

Ruby on rails 集合\u在ruby on rails中选择并保存记录,ruby-on-rails,Ruby On Rails,我正在尝试学习RubyonRails,编写自己的简单应用程序(待办事项列表)。我现在想添加一个下拉菜单来选择要分配任务的用户 My schema.rb: create_table "items", :force => true do |t| t.text "description" t.string "priority" t.date "date" t.time "time" t.datetime "created_at" t.datetime "updated

我正在尝试学习RubyonRails,编写自己的简单应用程序(待办事项列表)。我现在想添加一个下拉菜单来选择要分配任务的用户

My schema.rb:

create_table "items", :force => true do |t|
t.text     "description"
t.string   "priority"
t.date     "date"
t.time     "time"
t.datetime "created_at"
t.datetime "updated_at"
t.boolean  "done"
t.string   "name"
end

create_table "users", :force => true do |t|
t.string   "name"
t.datetime "created_at"
t.datetime "updated_at"
end
现在,在我的表格中,我有一个字段:

<%= f.collection_select(:user, User.all, :id, :name ) %>
我已经建立了关系(用户有多个任务,任务有一个用户)。我错过了什么?
非常感谢您的帮助

在“项目”表中没有“用户id”列

rails g migration AddUserToItems user_id:integer
rake db:migrate

class Item
  belongs_to :user
  ...
end

class User
  has_many :items
  ...
end

collection_select(:item, :user_id, User.all, :id, :name)
true})%>
1.2.3.4.5.6.
  • 模型

  • 在模型中存储的位置

  • 收集用户

  • 什么会被拯救

  • 展示什么

  • 提示“请选择”


  • 这可能会有帮助。

    好的,让我试试看,同时我使用以下代码使它工作:try:collection\u select(:item,:user\u id,user.all,:id,:name)。
    rails g migration AddUserToItems user_id:integer
    rake db:migrate
    
    class Item
      belongs_to :user
      ...
    end
    
    class User
      has_many :items
      ...
    end
    
    collection_select(:item, :user_id, User.all, :id, :name)
    
    <%= collection_select(:item, :user_id, User.all, :id, :name, {:prompt=>true}) %>
                           1.     2.       3.         4.   5.       6.