2012-08-08 51 views
1

在rails管理員中編輯用戶時,我得到的列不存在。銷售和用戶之間的關係是用戶的has_many:銷售,銷售belongs_to的買家和另一belongs_to的爲賣家,寫出來像rails管理專欄不存在

belongs_to :seller, :class_name=>User, :foreign_key=>:seller_id

ActionView::Template::Error (PG::Error: ERROR: column sales.user_id does not exist 
LINE 1: SELECT "sales".* FROM "sales" WHERE "sales"."user_id" = 14 
              ^
: SELECT "sales".* FROM "sales" WHERE "sales"."user_id" = 14): 
    1: = rails_admin_form_for @object, :url => edit_path(@abstract_model, @object.id), :as => @abstract_model.param_key, :html => { :method => "put", :multipart => true, :class => "form-horizontal denser", :data => { :title => @page_name } } do |form| 
    2: = form.generate :action => :update 

我試圖編輯配置文件模型(初始化/ rails_admin )在展示頁面上不顯示有關銷售的任何內容。我通過向用戶模型的list do,show doedit do塊添加了幾個測試字段(以及與銷售無關的任何內容)。

我不太確定要編輯什麼,以便rails admin不會嘗試在銷售表中查找用戶標識。

任何想法,尤其是answeres的讚賞!

回答

1

您需要指定關於has_many/has_one關聯的foreign_key

退房Rails的文檔:

:foreign_key

指定用於關聯的外鍵。默認情況下,這被認爲是小寫的 這個類的名字,後綴爲「_id」 。因此,使用has_many關聯的Person類將使用 「person_id」作爲默認值:foreign_key

+0

thanks!似乎我錯過了幾張桌子。 – Danny 2012-08-19 01:18:50

+0

沒問題!很高興你整理出來。 – 2012-08-19 04:29:13