Commit 0306f30d authored by Administrator's avatar Administrator

[FEAT] Async parse and ngrams extract methods: ok

parent dd61109b
......@@ -5,11 +5,10 @@ from django.http import Http404, HttpResponse, HttpResponseRedirect
from django.template.loader import get_template
from django.template import Context
#from documents.models import Project, Corpus, Document
from node.models import Language, ResourceType, Resource, \
Node, NodeType, Node_Resource, Project, Corpus, \
Node_Ngram, NodeNgramNgram
from node.admin import CorpusForm, ProjectForm, ResourceForm
from django.contrib.auth.models import User
......@@ -237,12 +236,8 @@ def project(request, project_id):
)
try:
#corpus.parse_resources.apply_async((), countdown=1)
corpus.parse_resources()
# async
corpus.children.filter(type_id=type_document.pk).extract_ngrams(keys=['title',])
#corpus.children.filter(type_id=type_document.pk).extract_ngrams(keys=['title',])
#corpus.parse_and_extract_ngrams(keys=['title',])
corpus.parse_and_extract_ngrams.apply_async((), countdown=1)
except Exception as error:
print(error)
......
......@@ -157,7 +157,6 @@ class Node(CTENode):
node_resource.save()
return resource
@current_app.task(filter=task_method)
def parse_resources(self, verbose=False):
# parse all resources into a list of metadata
metadata_list = []
......@@ -200,7 +199,6 @@ class Node(CTENode):
self.node_resource.update(parsed=True)
@current_app.task(filter=task_method)
def extract_ngrams(self, keys, ngramsextractorscache=None, ngramscaches=None):
# if there is no cache...
if ngramsextractorscache is None:
......@@ -235,6 +233,13 @@ class Node(CTENode):
for ngram_text, weight in associations.items()
])
@current_app.task(filter=task_method)
def parse_and_extract_ngrams(self, keys=None, ngramsextractorscache=None, ngramscaches=None, verbose=False):
self.parse_resources()
type_document = NodeType.objects.get(name='Document')
self.children.filter(type_id=type_document.pk).extract_ngrams(keys=['title',])
class Node_Metadata(models.Model):
node = models.ForeignKey(Node)
metadata = models.ForeignKey(Metadata)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment