2015-04-27 25 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中有方法 '发现'。