2012-02-21 5 views
1

私は小さなGrailsサービスを作成しましたが、モデルのメンバに 'text'という型を使用しようとしています。私はデータベースを削除して再作成しても、このフィールドが常にvarchar(255)として表示されることを常に見ています。hibernateの基本型を使用するGrails

私は基本的に持っている:

class eventParameter{ 
    static belongsTo = [logEvent:LogEvent] 
    String name 
    String value 

    static constraints = { 
     name blank:false 
     value blank:false 
    } 
    static mapping = { 
     value type:'text' 
    } 
} 

誰もが、これは列の右のタイプを作成しない理由を任意のアイデアを持っていますか?

答えて

0

基本となるデータベースタイプを上書きするには、sqlTypeマッピングを使用してください。たとえば:

static mapping = { 
    value sqlType:'text' 
} 

はまた、Grailsのマニュアルの関連セクションをチェックアウト:あなたが言うよう5.5.2.10 Custom Hibernate Types

+0

をこれは動作するはずです、と私は投稿する前にも、それを試してみました。私はもう一度やり直しましたが、私はまだ列のテキストの代わりにvarchar(255)で終わります。 – spowers

+0

あなたはどのデータベースを使用していますか? 'grails schemaExport'を実行すると、生成された' target/ddl.sql'はどうなるでしょうか? – ataylor

関連する問題