[
https://issues.apache.org/jira/browse/FREEMARKER-101?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16560728#comment-16560728
]
Daniel Dekany commented on FREEMARKER-101:
------------------------------------------
FM only used to have a "built-in" or directive for things that are, either:
* Often needed in templates (maybe ignoring templates that clearly go against
what FM was designed to be used for).
* Do some +presentation+ related operation, which is maybe too fancy to be
often requested, but still is "a thing" in this domain
Otherwise the user or framework is supposed to provide the functionality. If we
just add random utilities, it would become an unmanageable chaos. We have 200+
built-ins even without that (and there are still missing ones that clearly
satisfy both points above).
Do you believe random number generation and random item selection fits the
criteria (and why)?
> Add random number generation - perhaps 5.random()?
> --------------------------------------------------
>
> Key: FREEMARKER-101
> URL: https://issues.apache.org/jira/browse/FREEMARKER-101
> Project: Apache Freemarker
> Issue Type: New Feature
> Reporter: Ondra Žižka
> Priority: Major
>
> I can't find a way to easily create a random number in FreeMarker.
> Could we add it please?
> Something like:
> {code:java}
> 0?random() --> 0 to 0.9999999 like Math.random()
> 0?random(5,9) --> random from that interval
> Or (incompatible with the logic above)
> 5?random() --> 0 to 5
> 5?random(-1) --> 0 to 4
> And if this is possible - to make it compatible with the two above:
> random() --> 0 to 0.9999999 like Math.random()
> random(5,9) --> random from that interval{code}
> I am not quite sure about the overall consistency of the logic.
> Also, collections could have a built-in to pick random item:
> {code:java}
> myItems.random(){code}
> As a shorthand for
> {code:java}
> myItems[myItems.size().random(-1)]{code}
>
> See here:
> https://stackoverflow.com/questions/3680273/how-to-get-a-random-integer-in-freemarker-template/51554484#51554484
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)