Pyvmomi获取文件夹名称

时间:2016-09-26 15:14:28

标签: python django vsphere pyvmomi

我是Python和Django的新手,我需要列出我的所有虚拟机。 我使用了pyvmomi和Django,但是我无法从VSphere获取文件夹名称,它显示了一个奇怪的行。

  

VMware列表

     

' vim.Folder:组-V207'

     

' vim.Folder:基v3177'

     

' vim.Folder:组-V188'

我在vSphere上有3个文件夹,所以我认为我的联系很好,但这绝对不是他们的名字。

这是我的代码:

views.py

from __future__ import print_function
from django.shortcuts import render
from pyVim.connect import SmartConnect, Disconnect
import ssl

def home(request):
    s = ssl.SSLContext(ssl.PROTOCOL_TLSv1)
    s.verify_mode = ssl.CERT_NONE
    try:
        connect = SmartConnect(...)
    except:
        connect = SmartConnect(...)
    datacenter = connect.content.rootFolder.childEntity[0]
    vmsFolders = datacenter.vmFolder.childEntity
    Disconnect(connect)
    return render(request, 'vmware/home.html', {'vmsFolders':vmsFolders})

home.html的

<h1>VMware list</h1>
{% for vmFolder in vmsFolders %}
<div>
    <h3>{{ vmFolder }}</h3>
</div>
{% endfor %}

有人可以帮助我获取文件夹的真实姓名吗?

1 个答案:

答案 0 :(得分:2)

您需要明确说明您想要的名称,如下所示:

vmFolders = datacenter.vmFolder.childEntity
for folder in vmFolders:
    print(folder.name)