我有以下型号:
class Process (models.Model):
id = models.CharField(max_length=1000, primary_key=True)
processName = models.CharField(max_length=100)
class Step (models.Model):
id = models.CharField(max_length=1000, primary_key=True)
process = models.ForeignKey(Process, on_delete=models.CASCADE)
stepName = models.CharField(max_length=100)
我想访问特定的 Step 对象。我愿意:
step=Process.objects.get(id=stepId)
当我尝试在步骤中访问对象时:
step.objects.all()
我有以下错误:
AttributeError: Manager 无法通过 Process 实例访问
如何逐步访问对象?
答案 0 :(得分:0)
get() 返回单个对象或实例,而 filter() 返回一个查询集。
所以,这里的 step
是 Process
模型的一个实例。但是管理器(对象)只能通过模型访问。
step
本身就是一个对象。所以你不能使用 step.objects.all()
print(step)
print(step.processName)