我能找到有關KeyedEntity的唯一信息是:延伸KeyedEntity [K],其中K是一個數字型 人員在id字段分配其新創建的主鍵 值(該機制用於產生如何使用Squeryl的KeyedEntity?
對象鍵是特定於每個DatabaseAdaptor的)。
這是如何適用於我的鍵控對象是不可變的?那麼我的對象是不是不可能將它的id字段分配給新創建的主鍵值?
我想我應該重寫我的對象的KeyedEntity內的抽象id方法,以便返回我的對象的關鍵。但是,當Squeryl寫入數據庫時,Squeryl如何找出哪個字段用作關鍵字?
我正在使用Squeryl 9.5,如果它很重要。我無法找到有關這些問題的大量文檔。
將一個對象插入數據庫後,我檢查它的id字段,它已經改變。例如,像println(thing.id); mytable.insert(事);的println(thing.id);輸出0,然後是248.你是說Squeryl使用反射來找出哪個字段在id函數內被返回? – Mark 2013-04-08 22:04:48
我認爲它創造了一個新的對象,而不是改變舊的,但我不確定。 – VasyaNovikov 2013-04-08 23:44:11