2013-05-09 27 views
2

看來應該有可能傳入一個條件來代替「read_only」期望的字段的真/假,但似乎並不奏效。有沒有辦法根據該字段的值對字段執行條件read_only?有條件的只讀在一個字段上

事情我已經嘗試過,似乎沒有工作:

  • READ_ONLY真,如果self.blah運行,但不會有條件地使它READ_ONLY
  • READ_ONLY真,如果綁定[:對象。 fieldname.blah給出錯誤NoMethodError:未定義的方法[]「爲零:NilClass在服務器啓動
  • READ_ONLY真,如果value.blah給出錯誤NoMethodError:未定義的方法[]」爲零:NilClass在服務器啓動
  • READ_ONLY和傳球在lambda中,而不僅僅是真/假

回答

8

傳遞一個塊:

field :user, :belongs_to_association do 
    help "Required. Can't be changed after creation." 
    read_only do 
    bindings[:object].user_id.present? 
    end 
end