2017-10-10 9 views
0

こんにちは私はこのようなreturn文を持つモデルを持っています。djangoのdef unicode文字列情報を取得

def __unicode__(self): 
     return u'Car from: %s' % self.car_from 

私がモデルを呼び出して印刷すると、それが表示されます。

mymodel = CarFromData.objects.filter(user = self.user) 
<QuerySet [<CarFromData: Car from: CarRoom 1>]> 

私はビューでself.car_fromにアクセスしたいと思います。だから私は変数の中に CarRoom1を格納することができます。

は、私がこのよう

x = mymodel.model.__name__ 

を試してみましたが、それは私にその文字列情報を与えるものではありません。

答えて

2

car_fromは、CarFromDataモデルの属性に過ぎません。したがって、その価値は次のようになります。

mymodel = CarFromData.objects.filter(user=self.user) 
myobject = mymodel.first() 
x = None 
if myobject: 
    x = myobject.car_from 
+0

何が働いているのですか? –

+0

.first()はQuerySetから最初のオブジェクトを返します。あなたはここでドキュメントを読む必要がありますhttps://docs.djangoproject.com/en/1.11/ref/models/querysets/#first –

+0

こんにちはMohammad、私は複数の名前がある場合は、これを行う cfd for car_from_data: obj = cfd.first() しかし、うまくいかなかったのはなぜですか? –

関連する問題