0

別のモデルにUserとして表示されるモデルがあります。ReferencePropertyGroup

Groupを使用して のフォームを作成するMetaと、フォームの値に大量の生成された文字列が含まれます。usernameこれをやめて、代わりにのフィールドを使用したいと思いUserます。

私はすでに を定義していますkey_name。ただし、str(user.key())それでも生成された文字列が得られます。をオーバーライドできましたがkey()、それは悪いことです。何かご意見は?Group フォームusernameで ModelChoiceProperty 値に s を使用し、フォームを引き続き検証して保存する必要があります。key()ソースによると、現在、フォームは の文字列値を出力します。

4

2 に答える 2

0

key()db.model、オブジェクトの種類、その 、nameおよびを含むさまざまな情報を含むオブジェクトidです。

それで、それはkey().name()あなたが望むものを返すと思いますか?

docsでは、これらすべてについて説明しています。

于 2009-12-11T01:44:05.187 に答える
0

もう少し考えてみると、正解は「やらない」だと思います。にはEntity引き続きキーがあり、それらのキーは生成された文字列に対応します。フォームを機能させるためにもハッキングする必要があるため、本質的にコードの見栄えを少し良くするのは非常に手間がかかるように見えます。

于 2009-12-12T13:06:27.723 に答える