python - Accessing data through OnetoOne key in django -
i have 2 models connected using onetoone model key.
class job_expectation(models.model): slab_choices = ( ('h', 'hourly'), ('w', 'weekly'), ('m', 'monthly'), ) employer_choices = ( ('i', 'individual'), ('c', 'corporate'), ) type_choices=( ('p','part time'), ('f','full time'), ('i','internship'), ('l','freelancing'), ) readytoworkas = models.onetoonefield(readytoworkas) salary_slab = models.charfield(max_length=1,choices=slab_choices,default='m') employer_type = models.charfield(max_length=1,choices=employer_choices,default='c') industry = models.foreignkey(organization_sector) state = models.foreignkey(state, related_name="preferred state of work") city = models.foreignkey(city, related_name="preferred city of work") region = models.foreignkey(region, related_name="preferred region of work") shift_type = models.manytomanyfield(slot_preference) job_type = models.charfield(max_length=1,choices=type_choices,default='f') min_salary = models.integerfield(verbose_name="minimum expected salary") max_salary = models.integerfield(verbose_name="maximum expected salary") negotiable = models.booleanfield(verbose_name="is salary negotiable?")`
class readytoworkas (models.model): employee_id = models.foreignkey(employee,on_delete=models.do_nothing) readytoworkas = models.foreignkey(jobs)`
the results of query made on readytoworkas model list. each element in list, want access corresponding entry in job_expectation table.
how it? trying right now.
skilllist = readytoworkas.objects.filter(employee_id=employee) in skilllist: job_expect = job_expectation.objects.get(readytoworkas=i) i.employer_type = job_expect.employer_type i.job_type = job_expect.job_type i.shift_type = job_expect.shift_type i.min_salary = job_expect.min_salary i.max_salary = job_expect.max_salary i.state = job_expect.state i.city = job_expect.city i.region = job_expect.region`
you can more simple, using 'related_name':
class job_expectation(models.model): readytoworkas = models.onetoonefield(readytoworkas, related_name='job_expectation') skilllist = readytoworkas.objects.filter(employee_id=employee) in skilllist: job_expect = i.job_expectation
https://docs.djangoproject.com/en/dev/ref/models/fields/#django.db.models.foreignkey.related_name
Comments
Post a Comment