Vergleichen Sie den string mit der Geschwindigkeit
Bedenkt das Folgendes Stück code in einem velocity-template:
#set($brandName = $player.brand.name)
#set($brandNameExample = "NameExample")
#if($brandName == $brandNameExample)
11111
#else
22222
#end
Bekomme ich immer 22222
. Natürlich player.brand.name = "NameExample"
.
Kann jemand mir erklären, warum und wie man es bitte funktionieren?
Aus der Apache Velocity - Seite, geben Sie den folgenden Beispiel - #if( $foo == $bar)es ist wahr!#{else}es nicht!#Ende</li>. Brauchen Sie das führende hash?
Vielen Dank für Ihre Antwort, aber leider ist der hash nicht helfen.
könnte Sie bitte posten realen Beispiel möchte ich sicher sein, dass Sie Hinzugefügt # überall. Haben Sie versucht, die #if($Marke == "NameExample") und dann #if("NameExample" == $brandNameExample)
Vielleicht output-player.Marke.Namen die mit einem-Zeichen am Anfang und Ende, so können Sie überprüfen, ob es gibt keine führenden oder nachgestellten Leerzeichen oder etwas ähnliches.
Ich machte es, dass ich nicht sehen führende oder nachfolgende Zeichen
Vielen Dank für Ihre Antwort, aber leider ist der hash nicht helfen.
könnte Sie bitte posten realen Beispiel möchte ich sicher sein, dass Sie Hinzugefügt # überall. Haben Sie versucht, die #if($Marke == "NameExample") und dann #if("NameExample" == $brandNameExample)
Vielleicht output-player.Marke.Namen die mit einem-Zeichen am Anfang und Ende, so können Sie überprüfen, ob es gibt keine führenden oder nachgestellten Leerzeichen oder etwas ähnliches.
Ich machte es, dass ich nicht sehen führende oder nachfolgende Zeichen
InformationsquelleAutor mordekhai | 2013-02-18
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich würde empfehlen, dies zu testen
wenn es dann funktioniert würde ich versuchen die Ausgabe $player, $Spieler.Marke, $Spieler.Marke.name
Sie müssen sicherstellen, dass $Spieler.Marke.name - hält korrekte Wert.
- Fall kennschalldruck?
- sicher, dass der Zauber '$player.Marke.der name' richtig?
Ich denke, Sie hat einfach problem in Objekt $player
Ich vergaß zu sagen, dass aus dem Anfang, wenn ich Sie Anzeige $Spieler.Marke.Namen bekomme ich den richtigen Wert ! 🙂 Das problem scheint nur auftreten, wenn vergleichen.
was ist, wenn Sie versuchen, $brandName.equals($Spieler.Marke.name) ?
Ich habe alles versucht : $Spieler.Marke.Namen gibt mir das gute Werte, aber wenn ich Vergleiche, bekomme ich false. Hier ist ein weiterer test, den ich gemacht, dass ist fehlgeschlagen : $Spieler.getBrand().getName().equals("NameExample") #if($player.getBrand().getName().equals("NameExample")) 11111 #else 22222 #Ende bekomme ich : true, 22222, ... ich werde versuchen mit der Marke id anstelle der Namen 🙂
Ok, nach test, auch die ID funktioniert nicht. Ich habe keine andere Idee...
InformationsquelleAutor Dmytro Pastovenskyi
Gut fand ich die Lösung : ich rief Sie zweimal, um Geschwindigkeit : das erste mal ohne das player-Objekt und das zweite mit. Also beim ersten Aufruf alle Richtlinien über Spieler konnten nicht ausgewertet werden und null zurückgegeben. Danke Euch allen für Eure Hilfe
InformationsquelleAutor mordekhai