Questions & Answers

SOLVED
annick_querfeld
I'm new here

Random numbers

Jump to solution

Hallo Zusammen.

Wir machen gerade eine technische Migration von einem anderen CMS auf FirstSpirit.

Ein einem der Module ist in html Reiter eine Variable mit einer Random number zu befรผllen.

In der alten Schreibweise sah dass dann zum Beispiel so aus:

<% my_var = Random.rand(112000)%>

Gibt es auch in FirstSpirit die Mรถglichkeit den Value einer Variable mit einer Random number zu belegen?

Konnte zum Thema random bisher nichts brauchbares in der Doku finden.

Danke fรผr jeden Tipp,

viele GrรผรŸe,

Annick

1 Solution

Accepted Solutions
Peter_Jodeleit
Crownpeak employee

Verstehe ich das richtig, das im Template fรผr die Ausgabe nach HTML eine Zufallszahl erzeugt werden soll? Also fรผr den erzeugten HTML-Quellcode?

Wenn ja, dann geht das z.B. รผber ein Skript, dort kann Java-Syntax benutzt werden. Der Quelltext des Skripters wรคre dann z.B. wie folgt:

return new Random().nextInt(112000);

Zu beachten ist dann aber, das dieser Wert sich dann bei jeder Generierung รคndert.
Aber nicht bei jeder Auslieferung an den Browser.

Eventuell ist daher JSP oder JavaScript die bessere Wahl, das hรคngt vom Anwendungsfall ab.

Peter

View solution in original post

0 Kudos
3 Replies
Peter_Jodeleit
Crownpeak employee

Verstehe ich das richtig, das im Template fรผr die Ausgabe nach HTML eine Zufallszahl erzeugt werden soll? Also fรผr den erzeugten HTML-Quellcode?

Wenn ja, dann geht das z.B. รผber ein Skript, dort kann Java-Syntax benutzt werden. Der Quelltext des Skripters wรคre dann z.B. wie folgt:

return new Random().nextInt(112000);

Zu beachten ist dann aber, das dieser Wert sich dann bei jeder Generierung รคndert.
Aber nicht bei jeder Auslieferung an den Browser.

Eventuell ist daher JSP oder JavaScript die bessere Wahl, das hรคngt vom Anwendungsfall ab.

Peter
0 Kudos

Super. Dankeschรถn

0 Kudos

Hallo,

Auch wenn das Posting schon etwas รคlter ist - der Vollstรคndigkeit halber noch eine Alternative ohne Beanshell-Skript:

Im HTML-Kanal der Projekteinstellungen folgendes eintragen:

$CMS_SET(set_ps_randomGenerator, class("java.util.Random").new())$

$CMS_SET(set_ps_randomPositiveInt)$$CMS_VALUE(set_ps_randomGenerator.nextInt(47110815))$$CMS_END_SET$

Dann kann man sich in jedem Template eine neue Zufallszahl erzeugen mit

$CMS_VALUE(set_ps_randomPositiveInt)$

So nutzt man letztlich immer denselben Generator (wรคhrend einer Generierung).

Mรถchte man die Zufallszahl in einer Variablen speichern, weil man an einer Stelle eine identische Zahl รถfter benรถtigt, muss man .toString() benutzen:

$CMS_SET(set_myRandomint, set_ps_randomPositiveInt.toString())$

Viele GrรผรŸe

Michael

Type a product name