Rails:使用Devise将表中的所有项列出到下拉列表中

时间:2017-01-03 13:56:40

标签: ruby-on-rails ruby

我是Rails的新手 我在我的Rails 5.0.1项目中使用devise进行身份验证。

# Here is my Helper Module

module CategoriesHelper
 def categories_for_select
   Category.all.collect { |m| [m.name] }
 end
end
_form.html.erb页面中的

<div class="field">
<%= f.label :category_name %>
<%= f.select(:category_name, categories_for_select, :prompt => 'Select') %>
<%= link_to 'Create New Category', new_category_path %>

如何将类别表中的所有项目列出到与current_user关联的下拉列表。

更新 模式

create_table "categories", force: :cascade do |t|
 t.string   "name"
 t.datetime "created_at", null: false
 t.datetime "updated_at", null: false
 t.integer  "user_id"
end

1 个答案:

答案 0 :(得分:1)

假设您的User has_many categories,您可以这样做:

current_user.categories.pluck(:name)