0

嗨,如果有人可以解决我遇到的以下错误。

我有两个模型 PackageDeals 和 PackageDetails

在 PackageDeals 模型中,我有以下代码:- has_many :package_details has_many :image_sets accepts_nested_attributes_for :package_details

在 PackageDetails 模型中,我有:

    belongs_to :package_deals
accepts_nested_attributes_for :package_deals

现在在控制器中:

def new 
        @packages=PackageDeals.new(params[:package_deals])
                    @packages.package_details.build

结尾

现在在我正在使用的视图中:

      <td><%= r.text_field :name, :class => 'space_bottom quote_request_form',:size=>17 %></td></tr>
        <tr><td><%= r.fields_for :package_details do |f| %></td></tr>

        some codes

        <%end%>
  <tr>
    <td><%= r.submit 'Create', :class => 'space_top' %></td></tr></table>
  <% end %>

现在我在单击视图中的新链接时收到此错误:

未初始化的常量 PackageDeals::PackageDetail

任何解决方案请......

4

1 回答 1

1

检查模型和关联名称的拼写:

默认情况下,Rails在模型名称中使用单数形式, has_onebelongs_to关联名称(例如PackageDealand belongs_to :package_deal)和has_many关联名称中的复数形式(例如)。更多信息: http: //itsignals.cascadia.com.au/ ?p=7has_many :package_details

您可以打破命名约定,但是您需要在关联上添加额外的参数。因此,除非您有充分的理由不这样做,否则建议您坚持使用默认设置。有关这些额外参数的更多信息:http: //api.rubyonrails.org/classes/ActiveRecord/Associations/ClassMethods.html#method-i-belongs_to

于 2012-06-07T12:54:00.197 回答