2015-08-16 32 views
3

我使用的Grails 3.02和所有被罰款,但因爲我從另一個Grails項目移動幾個領域類我開始看到這個錯誤,當我開始做集成測試:Grails的3 ConstraintException

grails.validation。 exceptions.ConstraintException:拋出異常使用約束[唯一]類[類com.mypackage.Individual]爲值[真]:org.springframework.boot[email protected]6397593b還沒有被刷新,但

域名分類代碼:

class Individual { 

String institutionId 
String email 


static mapping = { 
    table 'db.individual' 
    id generator: 'sequence', params: [sequence: 'db.individual_id_sequence'] 
    institutionId index: 'db.individual_institution_id_idx' 
    email index: 'db.individual_email_idx' 
} 

static constraints = { 
    institutionId(blank: false) 
    email(unique: true) 
} 
} 

奇怪的是:這段代碼在另一個項目中工作,但不想在這個項目中工作,在我移動到的地方。我比較了configs(application.yml和application.groovy和build.gradle) - 但都是基本相同的。

任何幫助,grails大師?

+0

嘗試從電子郵件字段中刪除individual_email_ids。 –

+0

您是否找到解決方案?我剛收到同樣的錯誤 – GUL

回答

0

我想我已經找到了爲什麼我有這個例外。它根本與限制無關。

我剛剛在我的域類中有一些其他字段用於計算,所以它是未映射的字段。但Grails過去試圖將該字段映射到真正的數據庫列。一旦我已經定義了我自己的getter(在這個字段初始化的時候)這個計算的字段都變好了。

但是,grails例外btw是愚蠢的和迷失方向 - 它沒有描述根本原因。