我可以在groovy域中注入依赖项吗?

时间:2017-07-20 06:45:14

标签: grails gorm

在我的项目中我使用两个数据库,并且两个数据库中的列名都不同。所以我在配置文件中定义了一个标志,并在域中注入了一个依赖项。

实施例: - >

class MRAffiliate {

    transient def grailsApplication;

    String companyName;

    String annotations;

    static mapping = {        
        table name: "affiliati"//, schema: "public"
        id generator:'sequence', params:[sequence:'affiliati_seq']
        id column: "id"//, sqlType: "int4";
        if (grailsApplication.config.com.dogmasystems.postgres==true){
            companyName column: "ragione_sociale";
        } else {
            companyName column: "ragione_sociale", sqlType: "string";
        }
        if (grailsApplication.config.com.dogmasystems.postgres==true){
            annotations column: "annotazioni";
        } else {
            annotations column: "annotazioni", sqlType: "string";
        } 
        version false;
    }
}

是否有其他方法可以根据数据库

定义列名

我在执行此代码时遇到错误。 错误是, “错误评估域MRAffil的ORM映射块没有这样的属性:类的grailsApplication:org.codehaus.groovy.grails.orm.hibernate.cfg.HibernateMappingBuilder”

1 个答案:

答案 0 :(得分:2)

尝试Holders.grailsApplication.config.xxx - 请参阅使用映射块中的配置的this domain class