Sql Grails使用主键和外键显示两个表中的值

Sql Grails使用主键和外键显示两个表中的值,sql,grails,Sql,Grails,我希望,这可能很明显,但我找不到一个我认为能回答我问题的例子 我有一个无法修改的SQL数据库,其中有两个表,与主键/外键链接(分别是test_scenario和test_exec_queue,因此test_scenario中的PK值可以在test_exec_queue中多次显示),当我在屏幕上显示数据时,我希望它,我不想显示test_exec_队列中的FK值,而是想让它从test_场景表中获取testScenarioName并显示它 到目前为止,我的课堂看起来是这样的,但我不知道要用什么来完成上

我希望,这可能很明显,但我找不到一个我认为能回答我问题的例子

我有一个无法修改的SQL数据库,其中有两个表,与主键/外键链接(分别是test_scenario和test_exec_queue,因此test_scenario中的PK值可以在test_exec_queue中多次显示),当我在屏幕上显示数据时,我希望它,我不想显示test_exec_队列中的FK值,而是想让它从test_场景表中获取testScenarioName并显示它

到目前为止,我的课堂看起来是这样的,但我不知道要用什么来完成上面的逻辑,或者我是在其他地方做的?在控制器中?谢谢你的帮助

class TestExecQueue {

    static constraints = {
        testscenarioid(blank:false, editable:false)
        myPriority(inList:[0,1,2,3,4], blank:false)
        myState(inList:["READY"], blank:false)
    }

    static mapping = {
        table "test_exec_queue"
        version false
        columns{

            id column:"test_exec_queue_id"
            testscenarioid column:"test_scenario_id"
            myPriority column:"Priority"
            myState column:"State"
        }
    }

    Integer testscenarioid
    Integer myPriority
    String myState
}

除了已经实现的
TestExecQueue
类之外,还需要创建一个映射
test\u场景的类

TestExecQueue
类中,您可以按类而不是按整数字段链接到场景:

class TestExecQueue {
    static mapping = {
        scenario column:'test_scenario_id'
    }

    TestScenario scenario
}
注意:这是映射关系的一个示例,您应该查看以获取其他选项


类的显示完全取决于您的控制器和视图,这需要您进行更多的细化才能清楚地回答。一个选项是在将要打印的类上设置
public-toString()
方法。

谢谢。出于显示目的,我希望它所要做的就是从test_exec_队列表中获取test_scenario_id值,转到test_scenario表并查找等效的test_scenario_id,获取testScenarioName值并显示该值,而不是该值(即,我希望它显示“test 001”,这是存储在具有匹配的test_scenario_id值的test_scenario_表中的testScenarioName值,而不是将test_scenario_id值2显示为其存储在test_exec_队列表中的值,这两个表都有一个名为test_scenario_id的字段).因此,我已经添加了上面建议的内容,并且有些东西可以工作,但是我的视图现在显示的是“myframework.TestScenario:1”,而不是实际值,有什么想法吗?:/这是默认的
toString()
GORM域类的实现。在
TestScenario
中重写它以显示所需的名称字段。啊哈!太棒了!干杯,我把toString放错了位置,放错了方向,干杯