Re: Random string template tag

2007-07-05 Thread SmileyChris

Or you could do {{ "class1,class2,class3,class4"|split:","|random }}

(you'd need to make the |split filter too, Django only comes with |
join)

On Jul 4, 3:21 pm, Bryan Veloso <[EMAIL PROTECTED]> wrote:
> > If you want to hardcode the availability of the 'classes' variable in
> > every context (so you don't have to remember to define it every time),
> > you could write a context processor. See
> > django.core.context_processors for examples.
>
> That's probably what I'll need since it'll always have to be there.


--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-users@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en
-~--~~~~--~~--~--~---



Re: Random string template tag

2007-07-03 Thread Bryan Veloso

> If you want to hardcode the availability of the 'classes' variable in
> every context (so you don't have to remember to define it every time),
> you could write a context processor. See
> django.core.context_processors for examples.

That's probably what I'll need since it'll always have to be there.


--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-users@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en
-~--~~~~--~~--~--~---



Re: Random string template tag

2007-07-03 Thread Russell Keith-Magee

On 7/4/07, Bryan Veloso <[EMAIL PROTECTED]> wrote:
>
> > {{ classes|random }}
>
> Can you serve Context to the base template?
> I thought of that earlier, but I couldn't think of how to give it
> Context.

What do you mean? You pass a context to the template renderer; if the
template you render references a base template, then it will get the
same contexts that the renderer was given.

If you want to hardcode the availability of the 'classes' variable in
every context (so you don't have to remember to define it every time),
you could write a context processor. See
django.core.context_processors for examples.

Russ %-)

--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-users@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en
-~--~~~~--~~--~--~---



Re: Random string template tag

2007-07-03 Thread Russell Keith-Magee

On 7/4/07, Bryan Veloso <[EMAIL PROTECTED]> wrote:
>
> I don't know if this exists or not, but I'd like to insert a tag (much
> like cycle) that allows the random selection of a string. I'm trying
> to randomly assign a class to a  to simulate "random image
> rotator" type functionality. Something like...
>
> 

One option is to use the 'random' filter; your context would need to
define the list of possible strings:

Context({
   'classes': ['class1','class2','class3','class4']
})

but then your template could use:

{{ classes|random }}

Yours,
Russ Magee %-)

--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-users@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en
-~--~~~~--~~--~--~---



Re: Random string template tag

2007-07-03 Thread Tim Chase

> I don't know if this exists or not, but I'd like to insert a tag (much
> like cycle) that allows the random selection of a string. I'm trying
> to randomly assign a class to a  to simulate "random image
> rotator" type functionality. Something like...
> 
> 


Sounds like you want to make a custom template tag that uses
random.choice() to make the choice for you.  I haven't tested the
code below, but it's a starting point for what you describe:

from random import choice
from django import template
from django.template import resolve_variable
class RandomChoiceNode(template.Node):
def __init__(self, *choices):
self.choices = choices

def render(self, context):
try:
which = choice(self.choices)
result = resolve_variable(which, context)
return result
except template.VariableDoesNotExist:
return ''



http://www.djangoproject.com/documentation/templates_python/#passing-template-variables-to-the-tag

Fiddle accordingly.

-tim



--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-users@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en
-~--~~~~--~~--~--~---



Random string template tag

2007-07-03 Thread Bryan Veloso

I don't know if this exists or not, but I'd like to insert a tag (much
like cycle) that allows the random selection of a string. I'm trying
to randomly assign a class to a  to simulate "random image
rotator" type functionality. Something like...



Any ideas?


--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-users@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en
-~--~~~~--~~--~--~---