【问题标题】:Grails internals : Auto mapping and Domain object creationGrails 内部:自动映射和域对象创建
【发布时间】:2010-04-30 13:29:10
【问题描述】:

我正在尝试制作一个标记库来表示一个对象(在 UI 上读取和显示)。创建对象时(控制器中的保存方法),我看到域类和关联是由参数的自动分配创建的

def Book = new Book(params) 

它还映射复杂类型(例如:joda time)。我想知道促进这种映射所需的命名约定。出于好奇,是否有人还可以指出在 grails 源代码中我可以看到 grails 如何处理此映射的位置。我仍在学习 Spring,这可能是一个很好的练习。 谢谢, 巴布。

【问题讨论】:

    标签: grails core


    【解决方案1】:

    AFAIK 命名约定相当简单。如果有一个字段params.foo 并且您要绑定的对象有一个字段 foo,它将绑定该值,假设类型转换正常工作。如果有一个带有 Long 值的 params.bar.id 集,并且您的对象具有 Bar 类型的复杂属性,它将查找此实例并注入它。

    如果您需要对绑定过程进行更多控制,您可能需要使用bindData

    如果您对绑定过程的细节感兴趣,请查看 Java 的 PropertyEditor,因为这是在后台使用的。不久前,我写了一个 blog post 关于如何创建和注册 PropertyEditors,也许它可以帮助您开始使用这些东西。

    【讨论】:

    • 非常感谢..我读了一些你的文章(尤其是关于脚手架模板的教程)..再次感谢您的回复..我会详细介绍...
    猜你喜欢
    • 2011-09-14
    • 1970-01-01
    • 1970-01-01
    • 2022-12-20
    • 1970-01-01
    • 1970-01-01
    • 2016-06-01
    • 2019-09-19
    • 1970-01-01
    相关资源
    最近更新 更多