首页 > 解决方案 > 您好想将其他类的名称显示到 Basic 类

问题描述

但是当我运行它时,我显示它无法找到 muscel_id i Muscel 类的错误,我怎样才能只显示名称。我正在尝试使用 django 制定锻炼计划

class Days(models.Model):
    day_name = models.CharField(max_length=60)


class Muscel(models.Model):
    Muscel_name = models.CharField(max_length=60)


class Exercise(models.Model):
    exercise_name = models.CharField(max_length=70)


class Basic(models.Model):
    dagen_basic = models.ForeignKey(Days, related_name='days_basic', on_delete=models.CASCADE)
    muskel = models.ForeignKey(Muscel.Muscel_name, related_name='muskel_basic', 
             on_delete=models.CASCADE)
    exercise_name = models.ForeignKey(Exercise.exercise_name, related_name='exercise_name_basic', 
                    on_delete=models.CASCADE)
    reps = models.CharField(max_length=20)
    sets = models.IntegerField()

标签: djangodjango-models

解决方案


试试这个:

class Muscel(models.Model):
    muscel_name = models.CharField(max_length=60)

    def __str__(self):
        return self.muscel_name

在您的肌肉模型上添加str ,

class Basic(models.Model):
    ......
    muskel = models.ForeignKey(Muscel, related_name='muskel_basic', 
             on_delete=models.CASCADE)
    exercise_name = models.ForeignKey(Exercise, related_name='exercise_name_basic', 
                    on_delete=models.CASCADE)
    ......

删除 ForeignKey 上的 .Muscel_name


推荐阅读