But I need to do it:

**ok I try to explain better my situation**:

- I've got a class that is a "javascript repository". Its role is to 
respond with a string of javascript functions.  
Javascript functions are organized in indipendent modules (list of 
functions), so I can attach to my page just needed functions.  
Different modules can share same functions.
- In my view I specify the url of a function (it is in the same view), 
get_js_code, whose rule is to return javascript code (with: `return 
HttpResponse(code,content_type="application/x-javascript")` )
- get_js_code initiate that "javascript repository class", asking one or 
more modules (list of functions), and my class returns functions just one 
time, even if a function belongs to more than one module.  
- in my template I specify get_js_code url as a javascript resource, and 
javascript code is downloaded with the page from Django

It works well _BUT_:

- a module is needed from every app, so I specify in a Middleware an url 
that brings to another app/function that initiate that class in order to 
attach as javascript resource the common javascript module.

**Here is the problem**:

- my "javascript repository class" has a list that contains returned 
javascript functions list in order to return a function just one time. It 
works well but just one time: infact if I reload the page the list does not 
expire and no javascript funtions are returned.

Very hard to explain, I hope its clear now.

PS: I was wrong, I don't initiate the class inside a Middleware.

PPS: I know that is unusual to put javascript code inside Python code, but 
I'm testing this solution.


Il giorno giovedì 16 aprile 2015 12:36:39 UTC+2, Avraham Serour ha scritto:
>
> you are instantiating the variable on class definition, try doing on 
> function execution instead
>
> On Thu, Apr 16, 2015 at 12:43 PM, Silvio Benvegnù <[email protected] 
> <javascript:>> wrote:
>
>> I'm using Django Framework 1.7 with its webserver.
>>
>> I have a custom class where I declare a static variable, a list, where I 
>> append some values:
>>
>> class my_class:
>>
>>     list = [] 
>>
>>     def __init__( self, *args, **kwargs ): 
>>         [...]
>>
>>     def append_value(self,value):
>>         self.list.append( value )
>>
>> I use a static variable because I call this function different times. 
>> During a single page load my class works well but I noticed that 
>> my_class.list never expire.
>>
>> To reset the list I have to restart the webserver.
>>
>> I come from PHP and Perl where every time you refresh a page all yor 
>> variables are cleared if you don't save them in some way.
>>
>> I use session, sure, but I don't save that list into session, at least 
>> not voluntarily.
>>
>> NOTE: I don't know, during script execution, the first or the last time I 
>> call my_class().
>>
>> How can I reset the list every time I reload/change page?
>>
>>  -- 
>> You received this message because you are subscribed to the Google Groups 
>> "Django users" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to [email protected] <javascript:>.
>> To post to this group, send email to [email protected] 
>> <javascript:>.
>> Visit this group at http://groups.google.com/group/django-users.
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/django-users/f7f81ae7-8c33-49e8-8781-86c4c5cd2edb%40googlegroups.com
>>  
>> <https://groups.google.com/d/msgid/django-users/f7f81ae7-8c33-49e8-8781-86c4c5cd2edb%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>> For more options, visit https://groups.google.com/d/optout.
>>
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/django-users.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-users/7e80cb8e-55dc-4123-9839-ee692ce340c5%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to