파이썬 목록에 객체 작동하지 않는 것 같은데, 내가 뭘 잘못하고있는거야?장고 모델은 <p></p> 나는이 모델이 있다고 가정 내 장고 모델을 사용하여 목록을 생성 할
0
A
답변
4
server_ips = [i.ip for i in AlarmServer.objects.all()]
작동해야합니다 (방금 공간을 추가했습니다). 나는 "작동하지 않는 것"
[email protected] % ./manage.py shell
Python 2.5.2 (r252:60911, Oct 5 2008, 19:24:49)
[GCC 4.3.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
(InteractiveConsole)
>>> from mysite_org.videos.models import Video
>>> url_list = [v.url for v in Video.objects.all()]
>>> url_list
[u'http://media.mysite.org/videos/sblug_jan2009.flv', u'http://media.mysite.org/videos/sblug_feb2009.flv', u'http://media.mysite.org/videos/phpwm_mar2009.flv', u'http://media.mysite.org/videos/sblug_may2009.flv', u'http://media.mysite.org/videos/sblug_june2009.flv', u'http://media.mysite.org/videos/sblug_sep2009.flv', u'http://media.mysite.org/videos/bugjam-oct-2009.flv']
+0
메모리 절약을 위해이 쿼리 세트의 끝 부분에'.iterator() '태그를 붙일 수 있다고 생각합니다. 'AlarmServer.objects.all(). iterator()'. 체크 아웃 : http://www.djangoproject.com/documentation/models/lookup/ – thornomad
3
server_ips = [i[0] for i in AlarmServer.objects.values_list('ip')]
+2
이것이 OP가 원하는 것인지 알 수 없지만 단순히 예제에서 'AlarmServer.objects.values_list()'를 사용하여 목록 이해를 피할 수 있습니다. 'ip', flat = True)' –
다음과 같이이 시도했습니다? 그게 무슨 뜻 이죠? 시도 할 때 어떻게됩니까? 당신은 어떤 결과물을 얻습니까? 어떤 오류가 있습니까? –