Django shows object reference in foreign key column

user3454092

I have 2 classes defined in my models.py:

class Job(models.Model):
    job_id = models.CharField(primary_key=True, max_length=10)
    job_title = models.CharField(max_length=35)
    min_salary = models.IntegerField(blank=True, null=True)
    max_salary = models.IntegerField(blank=True, null=True)
    class Meta:
        managed = False
        db_table = 'jobs'
    def __str__(self):
        return self.job_id

class Employee(models.Model):
    employee_id = models.IntegerField(primary_key=True)
    first_name = models.CharField(max_length=20, blank=True)
    last_name = models.CharField(max_length=25)
    email = models.CharField(unique=True, max_length=25)
    phone_number = models.CharField(max_length=20, blank=True)
    hire_date = models.DateField()
    job = models.ForeignKey('Job')
    salary = models.DecimalField(max_digits=8, decimal_places=2, blank=True, null=True)
    commission_pct = models.DecimalField(max_digits=2, decimal_places=2, blank=True, null=True)
    manager = models.ForeignKey('self', blank=True, null=True, related_name ='employee')
    department_id = models.IntegerField(blank=True, null=True)
    class Meta:
        managed = False
        db_table = 'employees'
        def __str__(self):
           return self.employee_id
        def __unicode__(self):
           return self.employee_id

The issue is with foreign keys, on Employees admin page the Job field correctly displays drop-down with all possible job_ids, but the manager field displays drop-down with all entries equal "Employee object". I suspect this is because manager is a foreign key to self.employee.

How do I fix that?

Thank you.

Simon Charette

You defined the __str__ and __unicode__ methods on your Employee.Meta class.

De-indent them four space and you should be good:

class Employee(models.Model):
    employee_id = models.IntegerField(primary_key=True)
    first_name = models.CharField(max_length=20, blank=True)
    last_name = models.CharField(max_length=25)
    email = models.CharField(unique=True, max_length=25)
    phone_number = models.CharField(max_length=20, blank=True)
    hire_date = models.DateField()
    job = models.ForeignKey('Job')
    salary = models.DecimalField(max_digits=8, decimal_places=2, blank=True, null=True)
    commission_pct = models.DecimalField(max_digits=2, decimal_places=2, blank=True, null=True)
    manager = models.ForeignKey('self', blank=True, null=True, related_name ='employee')
    department_id = models.IntegerField(blank=True, null=True)
    class Meta:
        managed = False
        db_table = 'employees'

    def __str__(self):
       return self.employee_id
    def __unicode__(self):
       return self.employee_id

Collected from the Internet

Please contact [email protected] to delete if infringement.

edited at
0

Comments

0 comments
Login to comment

Related

From Dev

Django :: Reference foreign key

From Dev

drop down list in django shows object for foreign key field

From Dev

Adding column with foreign key and reference

From Dev

Foreign Key Reference for Django in Admin

From Dev

Sql column without foreign key reference

From Dev

Specify a foreign key on a non-unique reference column by additional reference

From Dev

django filtering on a field in a foreign key object

From Dev

Link in django admin to foreign key object

From Dev

Get foreign key value for queried object in Django

From Dev

Django-REST foreign key object permissions

From Dev

django get queryset of a object with chained foreign key

From Dev

django get queryset of a object with chained foreign key

From Dev

Django model has no foreign key object set

From Dev

Django get foreign key object inside Queryset

From Dev

Get the django object backward using foreign key

From Dev

With a foreign composite key, it possible to reference a column and a fixed value?

From Dev

Multi column foreign key, with hard coded reference value

From Dev

Is it not possible to have a check constraint reference a column that also has a foreign key?

From Dev

set the column code as foreign key on table with a reference to another table

From Dev

Best practices for normalizing a table and converting a nvarchar column to a foreign key reference

From Dev

Django - Reference data from another model using a foreign key

From Dev

How do I reference other FIELD using foreign key in Django?

From Dev

Django - Creating an instance via the serializer with a foreign key reference

From Dev

Can a foreign key reference another foreign key

From Dev

Column does not exist error when adding Foreign Key Django

From Dev

Django migrate after adding foreign key gives "unknown column" error

From Dev

Django rest IntegrityError: 1048, "Column cannot be null" on foreign key serializer

From Dev

Change column to foreign key

From Dev

Django failing to cascade-delete related generic foreign key object

Related Related

  1. 1

    Django :: Reference foreign key

  2. 2

    drop down list in django shows object for foreign key field

  3. 3

    Adding column with foreign key and reference

  4. 4

    Foreign Key Reference for Django in Admin

  5. 5

    Sql column without foreign key reference

  6. 6

    Specify a foreign key on a non-unique reference column by additional reference

  7. 7

    django filtering on a field in a foreign key object

  8. 8

    Link in django admin to foreign key object

  9. 9

    Get foreign key value for queried object in Django

  10. 10

    Django-REST foreign key object permissions

  11. 11

    django get queryset of a object with chained foreign key

  12. 12

    django get queryset of a object with chained foreign key

  13. 13

    Django model has no foreign key object set

  14. 14

    Django get foreign key object inside Queryset

  15. 15

    Get the django object backward using foreign key

  16. 16

    With a foreign composite key, it possible to reference a column and a fixed value?

  17. 17

    Multi column foreign key, with hard coded reference value

  18. 18

    Is it not possible to have a check constraint reference a column that also has a foreign key?

  19. 19

    set the column code as foreign key on table with a reference to another table

  20. 20

    Best practices for normalizing a table and converting a nvarchar column to a foreign key reference

  21. 21

    Django - Reference data from another model using a foreign key

  22. 22

    How do I reference other FIELD using foreign key in Django?

  23. 23

    Django - Creating an instance via the serializer with a foreign key reference

  24. 24

    Can a foreign key reference another foreign key

  25. 25

    Column does not exist error when adding Foreign Key Django

  26. 26

    Django migrate after adding foreign key gives "unknown column" error

  27. 27

    Django rest IntegrityError: 1048, "Column cannot be null" on foreign key serializer

  28. 28

    Change column to foreign key

  29. 29

    Django failing to cascade-delete related generic foreign key object

HotTag

Archive