예제 #1
0
파일: factories.py 프로젝트: adlius/osf.io
 def _create(cls, target_class, text=None, parents=[], *args, **kwargs):
     try:
         subject = Subject.find_one(Q('text', 'eq', text))
     except NoResultsFound:
         subject = target_class(*args, **kwargs)
         subject.text = text
         subject.save()
         subject.parents.add(*parents)
         subject.save()
     return subject
예제 #2
0
파일: factories.py 프로젝트: envobe/osf.io
 def _create(cls, target_class, text=None, parents=[], *args, **kwargs):
     try:
         subject = Subject.find_one(Q('text', 'eq', text))
     except NoResultsFound:
         subject = target_class(*args, **kwargs)
         subject.text = text
         subject.save()
         subject.parents.add(*parents)
         subject.save()
     return subject
def get_subject_id(name):
    if name not in SUBJECTS_CACHE:
        subject = None
        try:
            subject = Subject.find_one(Q('text', 'eq', name))
        except NoResultsFound:
            raise Exception('Subject: "{}" not found'.format(name))
        else:
            SUBJECTS_CACHE[name] = subject._id

    return SUBJECTS_CACHE[name]
예제 #4
0
def get_subject_id(name):
    if name not in SUBJECTS_CACHE:
        subject = None
        try:
            subject = Subject.find_one(Q('text', 'eq', name))
        except NoResultsFound:
            raise Exception('Subject: "{}" not found'.format(name))
        else:
            SUBJECTS_CACHE[name] = subject._id

    return SUBJECTS_CACHE[name]