2013-11-23 76 views
1

我有屬性:id, :augurid, #and so on這個模型「計劃」。 而且我有另一個模型「Augur」,屬性:id, :name, :email #and so on列表中的Rails_Admin查找

現在我想在Rails_Admin附表頁面顯示augur.name,和我的代碼就像下面:

config.model "Schedule" do 
    list do 
     fields :id, :weekdays, :occupied, :starting, :duration 
     field :augur do 
     pretty_value do 
      augur = Augur.find(:augurid) 
      augur.name 
     end 
     end 
    end 
    edit do 
     fields :id, :augurid, :weekdays, :occupied, :starting, :duration 
    end 
    show do 
    end 
    end 

但這種代碼是不工作,我不知道爲什麼,因爲我新的rails,我已經檢查了rails_admin的文檔,看起來沒有解決這個問題的方法。

任何人都可以幫助我嗎?

我認爲問題在於 augur = Augur.find(:augurid), ,因爲如果我將:augurid更改爲5,它將顯示正確的augur名稱。但是我怎樣才能做到這一點?

回答

1

由於@ JKen13579提到,:object_label_method :name可以爲你做。但是,如果你真的想訪問「當前對象」在您的rails_admin回調,有一種方法:

list do 
    field :augur do 
     pretty_value do 
      bindings[:object].name 
     end 
    end 
end 

這將顯示推運器的名稱,隻影響列表視圖。

1

您應該只可以做加object_label_method :name爲預言者模型rails_admin配置:

​​

這就是你想要的?