2017-01-31 9 views
2

I次のコードを持っている:Djangoの変数が期待どおりに一致しない

{% for x in fixtures %} 
    {% if currentSelectedTeam1Name == "Swansea" %} 
     <tr> 
      <td colspan="6"> 
       {{x.straightredfixturelive.home_team}} | {{currentSelectedTeam1Name}} 
      </td> 
     </tr> 
    {% endif %} 
{% endfor %} 

私は「スウォンジーは」それが動作し、以下の結果生成としてチームハードコーディングする場合:しかし

Swansea | Swansea 
Arsenal | Swansea 
Bournemouth | Swansea 

を、どのようなI本当にそれが欲しいです:

{% if currentSelectedTeam1Name == x.straightredfixturelive.home_team %} 

しかし、これは私が期待するように驚きです:

Swansea | Swansea 

so x.straightredfixturelive.home_teamは「スワンシー」を含むようですが、一致しません。私も試した:

{% if x.straightredfixturelive.home_team == "Swansea" %} 

それは結果も出なかった。だからそれは "スワンシー"としてそれが一致するように見えないようにWebページに表示されると思った。たぶんデータ型の問題?

モデル情報:

class StraightredFixtureLive(models.Model): 
    fixtureid = models.OneToOneField(
     StraightredFixture, 
     on_delete=models.CASCADE, 
     primary_key=True, 
    ) 
    home_team = models.ForeignKey('straightred.StraightredTeam', db_column='hometeamid', related_name='home_fixtures_live') 
    away_team = models.ForeignKey('straightred.StraightredTeam', db_column='awayteamid', related_name='away_fixtures_live') 
    fixturedate = models.DateTimeField(null=True) 
    fixturestatus = models.CharField(max_length=24,null=True) 
    fixturematchday = models.ForeignKey('straightred.StraightredFixtureMatchday', db_column='fixturematchday') 
    spectators = models.IntegerField(null=True) 
    hometeamscore = models.IntegerField(null=True) 
    awayteamscore = models.IntegerField(null=True) 
    homegoaldetails = models.TextField(null=True) 
    awaygoaldetails = models.TextField(null=True) 
    hometeamyellowcarddetails = models.TextField(null=True) 
    awayteamyellowcarddetails = models.TextField(null=True) 
    hometeamredcarddetails = models.TextField(null=True) 
    awayteamredcarddetails = models.TextField(null=True) 
+0

をあなたはstraightredfixturelive' 'のために設定したモデルとは何ですか? – Written

答えて

2

はあなたの問題は、文字列にモデルのインスタンスを比較しているということですので、彼らは同じことはありません。

あなたのモデルに応じて、あなたはおそらく何かしたい:

{% if currentSelectedTeam1Name == x.straightredfixturelive.home_team.name %} 
+0

多くのおかげで、私の頭を約1時間掻いてきました。 –