def get(self): args = request.args if 'id' in args: return me_obj_to_serializable( Application.objects.get(id=args['id'])) elif 'job' in args: return me_obj_to_serializable(Application.objects(job=args['job'])) elif 'resume' in args: return me_obj_to_serializable( Application.objects(resume=args['resume'])) else: return me_obj_to_serializable(Application.objects)
def student_rankings(student_id): applications = Application.objects(student_id=ObjectId(student_id)) applications = map(lambda a: a.to_dict(), applications) for application in applications: job = Job.objects(id=ObjectId(application['job_id']))[0] application['job'] = job.to_dict() print applications return render_template('student_rankings.html', student_id=student_id, applications=applications)
def employer_rankings(employer_id): rankings_array = [] jobs = Job.objects(employer_id=ObjectId(employer_id)) for job in jobs: applications = map(lambda a: a.to_dict(), Application.objects(job_id=job.id)) job_dict = job.to_dict() job_dict['applications'] = applications rankings_array.append(job_dict) print rankings_array return render_template('employer_rankings.html', employer_id=employer_id, rankings_array=rankings_array)
def to_dict(self): _dict = { 'job_id' : str(self.id), 'employer_id' : str(self.employer_id), 'position' : self.position, 'description' : self.description, 'location' : self.location, 'openings' : self.openings, 'applications' : map(lambda app: app.to_dict(), Application.objects(job_id=self.id)) } employer = Employer.by_id(self.employer_id) if employer: _dict.update({ 'company_name' : employer.company_name }) return _dict