Ruby on rails 如何通过Rails中的模型定义表单选择值?

Ruby on rails 如何通过Rails中的模型定义表单选择值?,ruby-on-rails,forms,activerecord,model,scaffolding,Ruby On Rails,Forms,Activerecord,Model,Scaffolding,我创建了一个名为Categories的简单模型,它连接到平台模型 class Platform < ActiveRecord::Base attr_accessible :name, :url, :country, :categories belongs_to :category end class平台

我创建了一个名为Categories的简单模型,它连接到平台模型

class Platform < ActiveRecord::Base
    attr_accessible :name, :url, :country, :categories
   belongs_to  :category
end
class平台

类别
我还成功创建了新平台的表单:

<%= simple_form_for(@platform) do |f| %>
  <%= f.error_notification %>

  <div class="form-inputs">
    <%= f.input :name %>
    <%= f.input :url %>
    <%= f.input :country %>
    <%= f.label :category %>
    <%= f.collection_select(:category_id, @categories, :id, :name, :include_blank => "Please select") %>
  </div>

  <div class="form-actions">
    <%= f.button :submit %>
  </div>
<% end %>

“请选择”)%%>

不幸的是,由于模型类别是新的,下拉列表当前只有1个值“请选择”。如何向该选择添加新值,最好是通过模型?

在平台控制器的
新建
操作中,添加
@categories=Category.all
,这样您将拥有所有类别。

在平台控制器的
新建
操作中,添加
@categories=categority.all
,因此,您将拥有所有类别。

请注意,使用simple_form,您可以使用

<%= f.association :category %>

这将自动使用数据库中的类别填充列表。有关更多提示,请参阅

编辑: 只需单独添加类别。您可以使用db/seeds.rb脚本或通过rails控制台手动为数据库添加类别种子。或者,您可以允许用户通过单独的窗体和控制器添加类别


例如,要在控制台中创建一些类别,请从命令行运行
rails c
,然后运行
Category.create!(name:“name”)
了解一些名称。

注意,使用simple\u表单,您可以使用

<%= f.association :category %>

这将自动使用数据库中的类别填充列表。有关更多提示,请参阅

编辑: 只需单独添加类别。您可以使用db/seeds.rb脚本或通过rails控制台手动为数据库添加类别种子。或者,您可以允许用户通过单独的窗体和控制器添加类别


例如,要在控制台中创建一些类别,请从命令行运行
rails c
,然后运行
Category.create!(name:“name”)
了解一些名称。

我知道,但如何将类别添加到数据库中的类别列表中,目前该列表为空,因为我没有定义任何类别。请参阅编辑。您是否希望能够在同一表单中添加平台的同时创建类别?我认为console是一种功能,如果您还可以告诉我如何为此添加新表单,它也可能对查看此踏板的其他人有所帮助。如果您想在单独的表单中创建类别,你只需要使用平台表单就可以了。我知道,但如何将类别添加到数据库中的类别列表中,目前它是空的,因为我没有定义任何类别。请参见编辑。您是否希望能够在同一表单中添加平台的同时创建类别?我认为console是一种功能,如果您还可以告诉我如何为此添加新表单,它也可能对查看此踏板的其他人有所帮助。如果您想在单独的表单中创建类别,你只需要做你在这里使用平台表单所做的事情。这正是它目前的设置方式,但我不知道如何将新类别添加到类别列表中。(基本上我该如何将它们添加到数据库?)好的,如果您想同时使用平台创建新类别,您可以使用。这正是它目前的设置方式,但我不知道如何将新类别添加到类别列表中。(基本上如何将它们添加到数据库?)好的,如果您想同时使用平台创建新类别,可以使用。