2015-04-27 62 views
0

我有兩個Table,TableA,TableB。 在TableA中,我有FieldA(EnumType-Noyes),和TableB中的一樣。如何初始化表中的枚舉字段?

我想用initValue方法初始化fieldA的值,但我有一個錯誤。

我用這個代碼:

public void initValue() 
{ 
TableB tableb; 
this.fieldA = tableb.fieldb; //but can't assing 
} 

在我的表B,該字段的值(枚舉諾伊斯)是肯定的,但在調試我「讀」的值NO。

我必須使用find methot來返回此參數嗎? 可以幫我嗎?

謝謝,

享受!

回答

0

您只在initValue()方法中聲明瞭TableB並且沒有使用任何記錄對其進行初始化。

這基本上是區別: Class1 class1Class1 class1 = new Class1()

所以,你需要做的:

TableB tableb = TableB::find('SearchArgument'); 
if (tableb) 
    this.fieldA = tableb.fieldb; 
+0

Alex,在這裏:TableB tableb = TableB :: find('SearchArgument'); 給了我一個錯誤 – ulisses

+0

謝謝亞歷克斯,你的建議給我帶來了正確的方式! – ulisses

0

你需要表B的初始化實例:

TableB b = TabelB::find('..'); 

if(b) 
    this.fieldA = b.fieldB 

您必須TableB中有方法 '發現'。