def getList(id=None, title=None, url=None): if id is not None: return session.query(List).get(id) titleFilter = (List.title == title) \ if title is not None else (True) urlFilter = (List.url == url) \ if url is not None else (True) theList = session.query(List) \ .filter(titleFilter) \ .filter(urlFilter) \ .first() return theList
def getVotes(self, index=None, user=None): return session.query(ListVote) \ .filter(ListVote.theList == self.id) \ .filter((ListVote.user == user.id) if \ (user is not None) else (True)) \ .filter((ListVote.index == index) if \ (index is not None) else (True)).all()
def setListVote(theList, theUser, theIndex, theVote): vote = session.query(ListVote) \ .filter(ListVote.theList == theList.id) \ .filter(ListVote.user == theUser.id) \ .filter(ListVote.index == theIndex).first() vote.vote = theVote session.commit()
def getUser(id=None, name=None, password=None, theList=None): if id is not None: return session.query(User).get(id) nameFilter = (User.username == name) \ if (name is not None) else (True) user = session.query(User) \ .filter(nameFilter) \ .first() if user is not None and \ password is not None and not \ pwd.verify(password, user.password): return None return user
def login(): form = LoginForm() if request.method == 'POST': x = session.query(User).filter(User.nickname == form.username.data).first() if(x and x.password_check(form.password.data)): login_user(x) return redirect('title') else: return redirect('login') return render_template('authorization.html')
def resolve_create_person(_, info, input): friends = [] skills = [] if 'friends' in input: person_ids = input.pop('friends') friends = session.query(Person).filter(Person.id.in_(person_ids)).all() if 'skills' in input: skill_ids = input.pop('skills') skills = session.query(Skill).filter(Skill.id.in_(skill_ids)).all() person = Person(**input) person.id = str(uuid4()) person.friends = friends person.skills = skills try: session.add(person) session.commit() except Exception: session.rollback() return person
def homepage() -> dict: products = session.query(Product).all() products_layout_format = [] row = [] # NOTE: return a n x 6 list of dicts to return for product in products: row.append(product.name) if len(row) == 6: products_layout_format.append(row) row = [] products_layout_format.append(row) return {"products": products_layout_format}
def create_persons(info, input): friends = [] skills = [] if 'friends' in input: person_ids = input.pop('friends') friends = session.query(Person).filter(Person.id.in_(person_ids)).all() if 'skills' in input: skill_ids = input.pop('skills') skills = session.query(Skill).filter(Skill.id.in_(skill_ids)).all() new_person = Person(**input) new_person.id = str(uuid4()) new_person.friends = friends new_person.skills = skills if info.return_type.of_type.name == 'Engineer': new_person.employeeId = str(uuid4()) try: session.add(new_person) session.commit() except Exception: session.rollback() return new_person
def getToken(id=None, user=None, token=None): if id is not None: return session.query(Token).get(id) tokenFilter = (Token.token == token) \ if (token is not None) else (True) userFilter = (Token.user == user.id) \ if (user is not None) else (True) token = session.query(Token) \ .filter(tokenFilter) \ .filter(userFilter) \ .first() if token is None: return None if token.expire < getTime(): return None return token
def resolve_persons(_, info, input={}): return session.query(Person).filter_by(**input).all()
def resolve_random_person(_, info): records = session.query(Person).count() random_id = str(randint(1, records)) return session.query(Person).get(random_id)
def resolve_person(_, info, input=None): return session.query(Person).filter_by(**input).first() if input else None
def resolve_persons(_, info, id=None): return session.query(Person).filter_by( id=id) if id else session.query(Person).all()
def resolve_random_skill(_, info): records = session.query(Skill).count() random_id = str(randint(1, records)) return session.query(Skill).get(random_id)
def resolve_search(_, info, input): persons = session.query(Person).filter( Person.name.like(f'%{input["name"]}%')).all() skills = session.query(Skill).filter( Skill.name.like(f'%{input["name"]}%')).all() return persons + skills
def load_user(id): return session.query(User).filter(User.id == id).first()
def getChoices(self, id=None): listChoices = session.query(ListChoice) \ .filter(ListChoice.theList == self.id) \ .filter((ListChoice.id == id) if \ (id is not None) else (True)).all() return [getChoice(id=j.choice) for j in listChoices]
def resolve_person(_, info, id=None): return session.query(Person).get(id)
def resolve_skills(_, info, id=None): return session.query(Skill).filter_by( id=id) if id else session.query(Skill).all()
def resolve_skill(_, info, input=None): return session.query(Skill).filter_by(**input).first() if input else None
def resolve_skill(_, info, id=None): return session.query(Skill).get(id)
def resolve_skills(_, info, input={}): return session.query(Skill).filter_by(**input).all()
def getUsers(self, user=None): listUsers = session.query(ListUser) \ .filter(ListUser.theList == self.id) \ .filter((ListUser.user == user.id) if \ (user is not None) else (True)).all() return [getUser(id=j.user) for j in listUsers]