У меня есть модель с именем приборной панели. На панели инструментов есть поле с именем model_name, которое представляет собой просто поле char. У меня есть другое поле под названием Dashboard_Field, которое я пытаюсь заполнить, когда сервер изначально запускается. Я делаю это, получая приборные панели и модели. Однако я получаю сообщение об ошибке «У объекта ManyToOneRel нет атрибута подробного имени»
for s_dashboard in dashboard:
for models in model
fields = model._meta.get_fields()
for sfield in fields:
if sdashboard.model_name == model._meta.verbose_name:
field = Dashboard_Field.objects.create(field=sfield.verbose_name, dashboard=sdashboard)
class Dashboard(models.Model):
model_name = models.CharField(max_length=1000, default='', null=True, verbose_name="Model Name")
def __str__(self):
return 'Dashboard ' + str(self.id)
class Dashboard_Field(models.Model):
dashboard = models.ForeignKey(Dashboard, on_delete=models.CASCADE, null=False)
field_name = models.CharField(max_length=100, null=True)
class Filter(models.Model):
dashboard = models.ForeignKey(Dashboard, on_delete=models.CASCADE, null=False)
dashboard_field = ChainedForeignKey(Dashboard_Field, chained_field="dashboard", chained_model_field="dashboard", show_all=False, auto_choose=True, sort=True, null=True)