Django ';ForwardManyToneDescriptor';对象没有属性';全部的

Django ';ForwardManyToneDescriptor';对象没有属性';全部的,django,django-views,Django,Django Views,现在,我遇到了M2O关系的问题:( Model.py class StorageDoc(models.Model): # tabela dokumentująca ruch na magazynie typeList = ( (' ', " "), ('WZ', "WZ"), ('PZ', "PZ"), ('PM', "PM") ) docType

现在,我遇到了M2O关系的问题:(

Model.py

 class StorageDoc(models.Model):  # tabela dokumentująca ruch na magazynie
        typeList = (
            (' ', " "),
            ('WZ', "WZ"),
            ('PZ', "PZ"),
            ('PM', "PM")
        )
        docType = models.CharField(max_length=10, choices=typeList, default=' ')
        storageName = models.ForeignKey(DictStorage, on_delete=models.DO_NOTHING)
        createTime = models.DateTimeField(auto_now=True)
        orderNumber = models.CharField(max_length=64, blank=True)

class StorageDocPosition(models.Model):
                    storageDoc = models.ForeignKey(StorageDoc, on_delete=models.DO_NOTHING, related_name="sds")  
                    item = models.ForeignKey(Part, on_delete=models.DO_NOTHING)
                    volumeUsed = models.IntegerField()
                    volumeBefore = models.IntegerField()
                    volumeAfter = models.IntegerField()
views.py

def StorageDocList (request):
    s_documents = StorageDocPosition.objects.all().prefetch_related("storageDoc")
    for s_document in s_documents:
        s_documentP = StorageDocPosition.storageDoc.all()

    return render(request, 'StorageDocList.html', {'storageDocAll': s_documents})

my error is:

    'ForwardManyToOneDescriptor' object has no attribute 'all'
为什么我不能在这种情况下使用“all”

如何修复它


感谢您的帮助:

首先,我并不完全理解您试图对
for
循环执行的操作:

for s_document in s_documents:
    s_documentP = StorageDocPosition.storageDoc.all()
除了s_文档中的输入错误,您不会更改变量,您只是修改了一个临时迭代器,原始s_文档仍将保持不变,并且您希望我在上下文中传递与
SotrageDocList
函数中的第一行相同的内容

如果您试图实现的是获取所有与预取相关的文档,只需消除
for
循环,并将查询集传递到上下文中即可

希望这有帮助