В качестве первичных ключей таблицы person поле22 в таблице заказов будет содержать целые числа. Дело в том, что, поскольку это внешний ключ, вы не можете выполнять операции как стандартное целое число.
Например: в таблице person у вас есть две строки:
field / person
1 / MrX
2 / MrY
В таблицах заказов
pk (automati c) / field22 / otherfield
1/2 / text2 .1
2/1 / text1.1
3/1 / text1.2
Если вы хотите просмотреть таблицы заказов для MrX, вам нужно будет получить Экземпляр таблицы MrX in person и результат поиска в таблицах заказов:
#get instance
instancePerson=person.objects.get(person="MrX")
#and then look in orders
search=orders.objects.filter(field22=instancePerson).values_list('otherfield' )
print(search)
#output:
['text1.1','text1.2']
Если в качестве примера вы попытаетесь выполнить поиск по значению поля 22:
search=orders.objects.filter(field22=1).values_list('otherfield' )
Вы выдадите исключение, которое объяснит вам, чем ожидался и был получен экземпляр 1. Надеюсь, что он ответил на ваш вопрос.