2011-12-23 10 views
1

次のように私はmonoengineでドキュメントタイプを定義しています。エラーがあった場合にmongoengineカスタムフィールド名

from mongoengine import * 

import datetime 

class User(Document): 
    username = StringField(min_length = 1, max_length = 20, regex = '(\w+)', required = True, unique = True) 
    password = StringField(min_length = 5, required = True) 
    email = EmailField(required = True, unique = True) 
    name = StringField(min_length = 3, max_length = 40, required = True) 
    date_created = DateTimeField(default = datetime.datetime.utcnow, required = True) 

はしかし、フィールド名は、メンバ変数です。いくつかのフィールドでは、これはユーザーにとってはかなり醜いものに見えます。たとえば、「date_created」は実際には「Date Created」と言うべきです。

だから、私の代わりにメンバー変数名の「よりよい」の名前を使用するようにMongoengineを指示する方法を見つけようとしていますが、私は方法を見つけるように見えることはできません。私は名前とverbose_nameを試してみましたが、何もしていないようだし、ドキュメントを見てきました。

答えて

3

verbose_nameは、フロントエンドユーザーに出力するために使用され、レンダリング時にフォームなどでフィールド名の代わりにverbose_nameを出力します。

+0

だから、私はちょうどそれがverbose_nameを代わりに使用する例外の内容をプリントアウトすることはできませんか? –

+0

例外トレースバックは一般に、開発者が消費するエンドユーザーではないため、モデルオブジェクトの属性名はより明示的です。 達成しようとしていることを明確にしたり、例外をどのように使用していますか? – Ross

+0

現在、私はstr(例外)をユーザに書いていますが、うまくいくようです。しかし、MongoEngineが生成する例外にあるテキストを変更できない場合は、自分でフォーマットすることができます。 –