Hi Roberto,

I’m still a little confused. Do I add the following to the document_renaming 
model or the document model?

> from jinja2 import Template
> from document_renaming.models import Sequence
> 
> document=Document.objects.first()

Did you add the following code as the renaming template via the web interface:

> Template('{% set user = document.target_actions.first().actor %}{{user}}-{{ 
> Sequence.objects.get(slug=user).next_value() }}').render(document=document, 
> Sequence=Sequence)


Kind regards,
Rachael

> On Jan 12, 2016, at 1:37 AM, Roberto Rosario 
> <[email protected]> wrote:
> 
> Did a quick test and with Jinja2 it is possible:
> 
> from jinja2 import Template
> from document_renaming.models import Sequence
> 
> document=Document.objects.first()
> 
> Template('{% set user = document.target_actions.first().actor %}{{user}}-{{ 
> Sequence.objects.get(slug=user).next_value() }}').render(document=document, 
> Sequence=Sequence)
> 
> 
> outputs:
> 
> admin-1
> 
> it is even possible to create the user sequences from the template (using 
> get_or_create):
> 
> Template('{% set user = document.target_actions.first().actor %}{{user}}-{{ 
> Sequence.objects.get_or_create(slug=user)[0].next_value() 
> }}').render(document=document, Sequence=Sequence)
> 
> On Tuesday, January 12, 2016 at 5:30:02 AM UTC-4, Roberto Rosario wrote:
> The UI, document upload and document renamer execute in different contexts, 
> it is not possible for them to share the web session. The alternative would 
> be to access the event log of the document and extract the first entry which 
> would indicate the user who created the document and expose this to the 
> context of the renaming template here: 
> https://gitlab.com/mayan-edms/document_renaming/blob/master/document_renaming/models.py#L80
>  
> <https://gitlab.com/mayan-edms/document_renaming/blob/master/document_renaming/models.py#L80>
> 
> The even log app uses Django activity stream 
> (https://github.com/justquick/django-activity-stream/blob/master/actstream/models.py
>  
> <https://github.com/justquick/django-activity-stream/blob/master/actstream/models.py>)
>  and they provide a reverse reference. Something like 
> 
> document.target_actions.first().actor 
> 
> should give your the user instance.
> 
> The second problem would be to get the user's sequence dynamically. Sequences 
> are passed to the rename template's context as 'sequence_XXX' variables 
> because Django's template engine doesn't allow parameter method calling.
> 
> In my mind the easiest path would be to ditch Django's template engine and 
> use something like Jinja2 (http://jinja.pocoo.org/ <http://jinja.pocoo.org/>) 
> which allows method calls with parameters and the renaming template itself 
> can contain all the required logic:
> 
> {% set username = document.target_actions.first.actor.username %}  {{ 
> username }}-{{ Sequence.objects.get(slug=%username%).next_value() }}
> 
> Provided you have already the sequences created for each use. This is all 
> from the top of my head without any actual test of course :)
> 
> 
> On Friday, January 8, 2016 at 4:52:07 PM UTC-4, Rachael Sewell wrote:
> Roberto,
> 
> I'm working with this app currently. I have two document types:
> Specs 
> Memos
> Memos will be renamed according to the logged in user. I would like to create 
> a number like this <username>-<incremental number>. For example: 
> "rachael.sewell-00"
> 
> I've tried a few things, but it seems the user is not accessible in the view. 
> Any pointers to where I should be updating code would be helpful to add this. 
> Thanks for the continued help.
> 
> Rachael
> 
> On Friday, December 18, 2015 at 10:34:13 AM UTC-8, Rachael Sewell wrote:
> Hello,
> 
> I'd like to know if there is already a way to add an automatically created 
> document number to a document. For example I would like to start with a 
> initial document number of AN00001 and increment (AN00002, AN00003) for each 
> additional doc. Does this functionality already exist? If not could it be 
> added to the core or would it need to be a custom application? Any pointers 
> on how to get started on this would be helpful as well. 
> 
> Thanks,
> Rachael
> 
> -- 
> 
> --- 
> You received this message because you are subscribed to a topic in the Google 
> Groups "Mayan EDMS" group.
> To unsubscribe from this topic, visit 
> https://groups.google.com/d/topic/mayan-edms/HRy_us-jp10/unsubscribe 
> <https://groups.google.com/d/topic/mayan-edms/HRy_us-jp10/unsubscribe>.
> To unsubscribe from this group and all its topics, send an email to 
> [email protected] 
> <mailto:[email protected]>.
> For more options, visit https://groups.google.com/d/optout 
> <https://groups.google.com/d/optout>.

-- 

--- 
You received this message because you are subscribed to the Google Groups 
"Mayan EDMS" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to