无法获取rails模型名称以显示在另一个模型的show.html.haml中

时间:2012-03-30 09:11:34

标签: ruby-on-rails mongoid

我有两个相关的模型:垒球和软球。为了创建一个新团队,我有一个名称和该部门的选择下拉列表。选择字段正确显示所有分区,但似乎没有保存选择。当我返回编辑页面时,选择下拉列表仍然显示第一个选项,我无法在团队的显示页面中显示该部门名称。我正在使用Mongoid,以防万一。

以下是我的模特。

class Softballdivision
  include Mongoid::Document
  field :name
  validates_presence_of :name

  has_many :softballteams
end

class Softballteam
  include Mongoid::Document
  field :name
  validates_presence_of :name

  belongs_to :softballdivision
end

我的表格:

= form_for @softballteam do |f|
  # error message deleted for brevity

  .field
    = f.label :name
    = f.text_field :name

  .field
    = collection_select(:softballdivision, :name, Softballdivision.all, :id, :name)

  .actions
    = f.submit 'Save'

以下是Team Show页面:

%p
  %b Name:
  = @softballteam.name
  %br
  %b Division:
  = @softballdivision.name

# links deleted for brevity

我觉得我离我很远,只是错过了一些简单的东西。

非常感谢任何建议。

谢谢, 查理马吉

1 个答案:

答案 0 :(得分:1)

我认为,在你的表格中应该是:

= collection_select(:softballteam, :softballdivision_id, Softballdivision.all, :id, :name)

在你的节目中:

= @softballteam.softballdivision.name