別のフォーム (顧客) にネストされたフォーム (住所) があります。アプリで顧客を作成しています。作成をクリックすると、データベースに顧客が作成されますが、ショーページにルーティングすると、このエラーが発生します。
何よりもまずここにエラーがあります
NoMethodError in Admin/customers#show
Showing /usr/local/rvm/gems/ruby-1.9.3-p392/bundler/gems/active_admin-fa7e4de2d5fa/app/views/active_admin/resource/show.html.arb where line #1 raised:
undefined method `address' for #<Customer:0x007ffb5619f420>
Extracted source (around line #1):
1: insert_tag renderer_for(:show)
Rails.root: /Users/danielhatcher/rails/printonrails
Application Trace | Framework Trace | Full Trace
app/admin/customers.rb:29:in `block (2 levels) in <top (required)>'
Request
Parameters:
{"id"=>"11"}
これが私のコントローラーです
ActiveAdmin.register Customer do
# Menu item
menu :label => "Customers", :parent => "Administration"
filter :name, label: "by Name"
filter :company, label: "by Company"
filter :email, label: "by Email"
filter :phone, label: "by Phone Number"
index do
column :name
column :company
column :email
column :phone
end
form :partial => "form"
show :title => :name do
panel "Customer Details" do
attributes_table_for resource do
row :name
row :company
row :email
row :phone
end
end
text_node(render :partial => "admin/addresses/form", :locals => { :address => resource.address })
end
end
ここに私のフォームがあります
<%=
form.has_many :addresses do |address|
address.inputs "Address" do
address.inputs :class => "" do
address.input :street
address.input :city
address.input :state
address.input :zip
end
end
end
%>
顧客モデル
class Customer < ActiveRecord::Base
attr_accessible :name, :email, :phone, :addresses_attributes, :company
has_many :addresses
accepts_nested_attributes_for :addresses, :allow_destroy => true
end
アドレス モデル
class Address < ActiveRecord::Base
attr_accessible :street, :city, :state, :zip, :customer_id
belongs_to :customer
end
テキストノードがこのエラーを引き起こしている理由がわかりません。助けていただければ幸いです。