相当详细我自己的记录集,这很简单,但有很多字段和子记录,我只是希望能够在github上给出的例子能够工作,即https://github.com/activescaffold/active_scaffold/wiki/API%3A-Nested
# app/models/company.rb
class Company < ActiveRecord::Base
has_many :contacts
end
# app/models/contact.rb
class Contact < ActiveRecord::Base
belongs_to :company
end
# app/controllers/contacts_controller.rb
class ContactsController < ApplicationController
active_scaffold :contacts do | config |
end
end
# app/controllers/companies_controller.rb
class CompaniesController < ApplicationController
active_scaffold :companies do |config|
config.nested.add_link("Company's contacts", [:contacts])
end
end
显然,contacts表有一个company_id列(即外键)。
'按原样',似乎在公司控制人员中,'公司'需要是'公司'。因此,在更改之后,config.nested ...行会导致以下错误: -
路由错误 nil的未定义方法`add_link':NilClass
在尝试(并且失败)修复此问题后,我只是将其评论出来并且效果很好,但是我需要一对一(或没有)关系,因此进行了更改(联系人必须更改为联系人,Rails对象否则): -
# app/models/company.rb
class Company < ActiveRecord::Base
has_one:contact
end
它似乎有效,但是当联系人更新时,它会使表单混乱,在表单顶部显示更新的联系人,就在实际属于下面记录的字段标签下,即公司记录。它还允许在创建公司记录时创建多个联系人,但这可能受到另一个方法的约束,或者如果config.nested.add_link有效,则可能会修复。
答案 0 :(得分:1)
我有同样的问题,只是使用它(它在你发布的同一个链接中):
config.nested.add_link(:contacts, :label => "Company's contacts", :page => true)