def __init__(self, request, node, ns, *args, **kwargs):
super(NodeStorageForm, self).__init__(request, ns, *args, **kwargs)
self.fields['owner'].choices = get_owners(request).values_list('username', 'username')
node_zpools = node.zpools
zpools = [(k, '%s (%s)' % (k, filesizeformat(int(v['size']) * 1048576))) for k, v in node_zpools.items()]
# Add zpools for NodeStorage objects that have vanished from compute node (Issue #chili-27)
for zpool in node.nodestorage_set.exclude(zpool__in=node_zpools.keys()).values_list('zpool', flat=True):
zpools.append((zpool, '%s (???)' % zpool))
self.fields['zpool'].choices = zpools
评论列表
文章目录