Еще одна проблема "fk_name ' ' не является иностранным ключом для" [Python/Django]

Пожалуйста, не осуждайте мой вопрос. Я перепробовал все предложенные здесь варианты, но все еще безрезультатно.

вот мой код ---

admin.py

from django.contrib import admin
from .models import candidates_info, address

class addressInline(admin.TabularInline):
  model = address
  fk_name = 'id'

@admin.register(candidates_info)
  class candidates_infoAdmin(admin.ModelAdmin):
  fields =['last_name', 'first_name', 'middle_name', 'moniker']
  inlines = [addressInline]

models.py

import datetime
from django.db import models
from django.utils import timezone

class candidates_info (models.Model):
  last_name = models.CharField(max_length=50)
  first_name = models.CharField(max_length=50)
  middle_name = models.CharField(max_length=50)
  #position = models.ForeignKey('positions', db_column='position_id', on_delete=models.CASCADE, null=False)
  #birth_date = models.ForeignKey('birthdate', db_column='date_of_birth_id', on_delete=models.CASCADE, null=False)
  #contact_info = models.ForeignKey('contact_info', db_column='contact_info_id', on_delete=models.CASCADE)
  addr = models.ForeignKey('address', on_delete=models.SET_NULL, null=True)
  moniker = models.CharField(max_length=35)
  #party = models.ForeignKey('political_parties', db_column='political_parties_id', on_delete=models.CASCADE, null=False)
  registration_dt = models.DateTimeField('date registered')

class address(models.Model):    
  lot_no = models.DecimalField(max_digits=5, decimal_places=0)
  block_no = models.DecimalField(max_digits=5, decimal_places=0)

примечание: закомментированные коды (#) являются частью моего кода в models.py, который я временно отключил, чтобы проверить, не конфликтует ли он с объявлением foreignKey.

И еще одна вещь, пробовал объявлять и не объявлять fk_name в admin.py, но все равно безрезультатно. Пожалуйста, помогите, ребята. Я здесь уже несколько дней. Я не могу найти ошибку.

ТИА

btw. вот ошибка из консоли ---

<class 'votenow.admin.addressInline'>: (admin.E202) fk_name 'id' is not a ForeignKey to 'votenow.candidates_info'.

Измените свои модели, чтобы включить поле Foriegnkey с адресом

import datetime
from django.db import models
from django.utils import timezone

class candidates_info (models.Model):
  last_name = models.CharField(max_length=50)
  first_name = models.CharField(max_length=50)
  middle_name = models.CharField(max_length=50)
  #position = models.ForeignKey('positions', db_column='position_id', on_delete=models.CASCADE, null=False)
  #birth_date = models.ForeignKey('birthdate', db_column='date_of_birth_id', on_delete=models.CASCADE, null=False)
  #contact_info = models.ForeignKey('contact_info', db_column='contact_info_id', on_delete=models.CASCADE)
  addr = models.ForeignKey('address', on_delete=models.SET_NULL, null=True)
  moniker = models.CharField(max_length=35)
  #party = models.ForeignKey('political_parties', db_column='political_parties_id', on_delete=models.CASCADE, null=False)
  registration_dt = models.DateTimeField('date registered')
  address =odels.ForeignKey(
        Address, on_delete=models.CASCADE)

class Address(models.Model):    
  lot_no = models.DecimalField(max_digits=5, decimal_places=0)
  block_no = models.DecimalField(max_digits=5, decimal_places=0)
Вернуться на верх